openerp-community team mailing list archive
-
openerp-community team
-
Mailing list archive
-
Message #06003
Re: Image store problem in Odoo
Thank you Sebastien, I think this is what we are all looking for.
I am currently testing it for the marketplace module. I have the
following error :
Traceback (most recent call last):
File "/opt/openerp/oct-dev/server/openerp/http.py", line 470, in dispatch
result = self._call_function(**self.params)
File "/opt/openerp/oct-dev/server/openerp/http.py", line 294, in _call_function
return checked_call(self.db, *args, **kwargs)
File "/opt/openerp/oct-dev/server/openerp/service/model.py", line 113, in wrapper
return f(dbname, *args, **kwargs)
File "/opt/openerp/oct-dev/server/openerp/http.py", line 291, in checked_call
return self.endpoint(*a, **kw)
File "/opt/openerp/oct-dev/server/openerp/http.py", line 652, in __call__
return self.method(*args, **kw)
File "/opt/openerp/oct-dev/server/openerp/http.py", line 337, in response_wrap
response = f(*args, **kw)
File "/opt/openerp/oct-dev/web/addons/web/controllers/main.py", line 1046, in call_kw
return self._call_kw(model, method, args, kwargs)
File "/opt/openerp/oct-dev/web/addons/web/controllers/main.py", line 1038, in _call_kw
return getattr(request.registry.get(model), method)(request.cr, request.uid, *args, **kwargs)
File "/opt/openerp/oct-dev/addons/mail/mail_thread.py", line 419, in write
result = super(mail_thread, self).write(cr, uid, ids, values, context=context)
File "/opt/openerp/oct-dev/server/openerp/osv/orm.py", line 3946, in write
result += self._columns[field].set(cr, self, id, field, vals[field], user, context=rel_context) or []
File "/opt/openerp/oct-dev/server/openerp/osv/fields.py", line 1287, in set
self._fnct_inv(obj, cr, user, id, name, value, self._fnct_inv_arg, context)
File "/opt/openerp/oct-dev/server-env-tools/binary_field/fields.py", line 156, in _fnct_write
obj, cr, uid, ids, field_name, value, args, context=context)
File "/opt/openerp/oct-dev/server-env-tools/binary_field/fields.py", line 128, in _fnct_write
res = storage.add(value)
File "/opt/openerp/oct-dev/server-env-tools/binary_field/fields.py", line 61, in add
_file_write(self.cr, self.uid, self.location, value)
TypeError: _file_write() takes exactly 4 arguments (5 given)
I checked the server/openerp/base/ir/ir_attachment.py line 129, it seems that the function changed :
def _file_write(self, cr, uid, value):
In general, all 'location' seems to have disappeared, in -file_read, _file_delete and _full_path.
I am using the latest trunk file. I guess the module may correctly work on V7.
Available this evening if you need.
Yannick.
Le 11/06/2014 15:43, Sebastien Beau a écrit :
Hi all,
I worked on this during the last month and I need your feedback
https://code.launchpad.net/~akretion-team/server-env-tools/server-env-tools
<https://code.launchpad.net/%7Eakretion-team/server-env-tools/server-env-tools>
The aim of my first module is to implement new kind of fields
BinaryField
ImageField
ImageResizeField
All of this fields will be store on the file system by default and not
in the
database. If you want to store it on an other support (database, S3,
ftp, SFTP...)
Then you should create your own 'storage class' and use your custom
'storage
class' instead
The default Storage class will store the field on the file system and
build
the path like that
BASE_LOCATION/DB_NAME/MODEL-FIELD/XXX/YYYYY
with
- BASE_LOCATION: the base location configured in ir.config_parameter
- DB_NAME: your database name
- MODEL-FIELD: the concatenation of the name of the model with the
name of the
field, for example 'product_product-image'
- XXX: the first 3 letter of the file name build with their sha1 hash
- YYYYYY: file name build with their sha1 hash
Here is an example of field declaration
'binary_test': fields.BinaryField('Test Binary'),
'image_test': fields.ImageField('Test Image'),
'image_test_resize': fields.ImageResizeField(
related_field='image_test',
string='Test Image small',
height=64,
width=64,
),
If you want to see to a real implementation take a look here :
http://bazaar.launchpad.net/~akretion-team/openerp-product-attributes/openerp-product-attributes-product-image/view/head:/product_image/product_image.py#L38
<http://bazaar.launchpad.net/%7Eakretion-team/openerp-product-attributes/openerp-product-attributes-product-image/view/head:/product_image/product_image.py#L38>
You can also try this module to understand better the way it work.
(Note resize field will be recomputed automatically as this field
depend of refernce field)
As you can see I have a custom path based on the model-field. I need
this because I want to serve some image directly from nginx without
using OpenERP/Odoo. If I use the same path for all of the binary/image
then I will be not able to choose what I want to share with nginx.
Hope this can help you.
2014-06-11 12:45 GMT+02:00 Falinwa Hans <hans.yonathan@xxxxxxxxxxx
<mailto:hans.yonathan@xxxxxxxxxxx>>:
Hi Tony,
Wow, I look on the code, and its very beautiful.
Thanks for the solution, I think it will solved the problem for now.
Very appreciated it.
I remember that you developed oe_cn_fonts module too.
It’s a great work.
Hi Franck Bret,
Thanks for the information, its nice to see that we have the same
problem in this topic.
Thank You.
Best Regards,
*Hans Yonathan*
*OpenERP Support*
FALINWA Limited
/Expert in Finance & Business Intelligence/
/OpenERP Partner/
/Website: //www.falinwa.com/ <http://www.falinwa.com/>
On 06/11/2014 06:28 PM, Tony Gu wrote:
Hi Hans,
You may be interested to have a look at our module here:
https://github.com/shine-it/product_image_filestore
The image on product can be save as an attachment of the product
and display correctly on the product form. If you have product
image stored in database already, this module will also extract
the binary and store it back to file store.
Have fun!
*From:*Franck Bret [via OpenERP Community] [mailto:[hidden email]
<http://user/SendEmail.jtp?type=node&node=4645761&i=0>]
*Sent:* Wednesday, June 11, 2014 6:31 PM
*To:* Falinwa Hans
*Subject:* Re: [Openerp-community] Image store problem in Odoo
there is a community call for discussion around this here, hope it
helps
https://twitter.com/Seb_Beau/status/474847322887974912
https://code.launchpad.net/~akretion-team/server-env-tools/server-env-tools
<https://code.launchpad.net/%7Eakretion-team/server-env-tools/server-env-tools>
Interesting read and module too here :
https://bitbucket.org/anybox/advanced_attachment
http://docs.anybox.fr/advanced_attachment/current/
Le 11/06/2014 11:48, Falinwa Hans a écrit :
Hi Yannick,
Thx for your response.
I see the code, and it’s a nice idea. I will keep it on myself.
It will be nicer if the improvement is made from Odoo
framework itself.
Thank You.
Best Regards,
*Hans Yonathan*
*OpenERP Support*
FALINWA Limited
/Expert in Finance & Business Intelligence/
/OpenERP Partner/
/Website: //www.falinwa.com/ <http://www.falinwa.com/>
*From:*Yannick Buron-2 [via OpenERP Community] [mailto:[hidden
email] <http://user/SendEmail.jtp?type=node&node=4645759&i=0>]
*Sent:* Wednesday, June 11, 2014 5:06 PM
*To:* Falinwa Hans
*Subject:* Re: [Openerp-community] Image store problem in Odoo
+1 I have the same problem with the marketplace module in
communityTools. We need to have pictures displayed on the
announcements,
and I really don't want to store them in database.
I worked on the problem three month ago, and at this time the
problem
was : There was no way to store the content of binary fields
on the
ir.attachments, and thus store the content in filesystem.
When you set the ir_location key in system configuration,
ir.attachments
are correctly stored in filesystem, the problem is really the
fact that
there is no link between binary fields and ir.attachments.
I tried to make a workaround in my module, please see
http://bazaar.launchpad.net/~yannick-buron/openerp-communitytools/trunk/view/head:/marketplace/marketplace.py
<http://bazaar.launchpad.net/%7Eyannick-buron/openerp-communitytools/trunk/view/head:/marketplace/marketplace.py>
starting line 173. It almost work, the content is stored in
filesystem,
but unfortunately then it's not displayed back correctly on
the form in
the picture widget. I only spent some hours on this problem,
so maybe
there is little to correct to make it works.
This was an issue three month ago, with the ecommerce module I
really
hope that Odoo SA worked on this because having such
limitations on
binary fields is really a pain. Does someone have some news
regarding
this matter?
Yannick.
Le 11/06/2014 10:49, Falinwa Hans a écrit :
> Hi Guys,
>
> I find that the image in Odoo is stored in database.
> Did we can change the configuration so it can stored in the
file system?
> I can't find the tutorial anywhere. So I think we cannot.
>
> What I know is we can change the configuration when we want
to store the
> attachment, but its different case in image.
>
> I think its an important feature for Odoo, importantly Odoo
will have an
> e-commerce and website builder feature which we will have a
lot of image in
> Odoo.
>
> I find that its very important and there's a problem when
the image is
> stored in database :
> 1. Odoo not convert the size/resolution of the image. (We
must warned the
> end user to only just upload a small size of file, which
usually user always
> make a mistake)
> 2. Its very hard to make an importation on image
> 3. The database will be very big because of image, and it
will be hard to
> make a dump file(backup and restore) in web interface.
> (which end user always use this feature to make a test
database which image
> is not important in here)
>
> If we can change the configuration so we can store it in
file system and
> save the database only the name of file. We will have
advantage:
> 1. It will be easier to make an importation of image.
> 2. We will not care about file size anymore because it save
on file system.
> 3. The database size will reduce greatly.
>
> Before I have a problem in attachment, when my database size
raise to 2 GB
> which impossible to make a dump(backup and restore) in web
interface. After
> I change the configuration the database size reduce greatly
to only 30 MB.
> So I think this problem will occur again if we begin to
upload the image in
> Odoo.
>
> Is there any solution for this?
>
> Thank You.
>
>
>
>
> -----
> Hans Yonathan
> OpenERP Support
> FALINWA Limited
> Expert in Finance & Business Intelligence
> OpenERP Silver Partner
> Website: www.falinwa.com <http://www.falinwa.com>
>
> --
> View this message in context:
http://openerp-community.2306076.n4.nabble.com/Openerp-community-Image-store-problem-in-Odoo-tp4645755.html
> Sent from the OpenERP Community mailing list archive at
Nabble.com.
>
> _______________________________________________
> Mailing list: https://launchpad.net/~openerp-community
<https://launchpad.net/%7Eopenerp-community>
> Post to : [hidden email]
<http://user/SendEmail.jtp?type=node&node=4645757&i=0>
> Unsubscribe : https://launchpad.net/~openerp-community
<https://launchpad.net/%7Eopenerp-community>
> More help : https://help.launchpad.net/ListHelp
_______________________________________________
Mailing list: https://launchpad.net/~openerp-community
<https://launchpad.net/%7Eopenerp-community>
Post to : [hidden email]
<http://user/SendEmail.jtp?type=node&node=4645757&i=1>
Unsubscribe : https://launchpad.net/~openerp-community
<https://launchpad.net/%7Eopenerp-community>
More help : https://help.launchpad.net/ListHelp
------------------------------------------------------------------------
*If you reply to this email, your message will be added to the
discussion below:*
http://openerp-community.2306076.n4.nabble.com/Openerp-community-Image-store-problem-in-Odoo-tp4645755p4645757.html
To start a new topic under OpenERP Community, email [hidden
email] <http://user/SendEmail.jtp?type=node&node=4645759&i=1>
To unsubscribe from OpenERP Community, click here.
NAML
<http://openerp-community.2306076.n4.nabble.com/template/NamlServlet.jtp?macro=macro_viewer&id=instant_html%21nabble%3Aemail.naml&base=nabble.naml.namespaces.BasicNamespace-nabble.view.web.template.NabbleNamespace-nabble.view.web.template.NodeNamespace&breadcrumbs=notify_subscribers%21nabble%3Aemail.naml-instant_emails%21nabble%3Aemail.naml-send_instant_email%21nabble%3Aemail.naml>
Hans Yonathan
OpenERP Support
FALINWA Limited
Expert in Finance & Business Intelligence
OpenERP Silver Partner
Website: www.falinwa.com <http://www.falinwa.com>
------------------------------------------------------------------------
View this message in context: RE: [Openerp-community] Image store
problem in Odoo
<http://openerp-community.2306076.n4.nabble.com/Openerp-community-Image-store-problem-in-Odoo-tp4645755p4645759.html>
Sent from the OpenERP Community mailing list archive
<http://openerp-community.2306076.n4.nabble.com/> at Nabble.com.
_______________________________________________
Mailing list:https://launchpad.net/~openerp-community <https://launchpad.net/%7Eopenerp-community>
Post to :[hidden email] <http://user/SendEmail.jtp?type=node&node=4645760&i=0>
Unsubscribe :https://launchpad.net/~openerp-community <https://launchpad.net/%7Eopenerp-community>
More help :https://help.launchpad.net/ListHelp
--
Franck Bret
============
Consultant fonctionel OpenErp
------------
[hidden email] <http://user/SendEmail.jtp?type=node&node=4645760&i=1>
Gsm. 0603906598
_______________________________________________
Mailing list: https://launchpad.net/~openerp-community
<https://launchpad.net/%7Eopenerp-community>
Post to : [hidden email]
<http://user/SendEmail.jtp?type=node&node=4645760&i=2>
Unsubscribe : https://launchpad.net/~openerp-community
<https://launchpad.net/%7Eopenerp-community>
More help : https://help.launchpad.net/ListHelp
------------------------------------------------------------------------
*If you reply to this email, your message will be added to the
discussion below:*
http://openerp-community.2306076.n4.nabble.com/Openerp-community-Image-store-problem-in-Odoo-tp4645755p4645760.html
To start a new topic under OpenERP Community, email [hidden email]
<http://user/SendEmail.jtp?type=node&node=4645761&i=1>
To unsubscribe from OpenERP Community, click here.
NAML
<http://openerp-community.2306076.n4.nabble.com/template/NamlServlet.jtp?macro=macro_viewer&id=instant_html%21nabble%3Aemail.naml&base=nabble.naml.namespaces.BasicNamespace-nabble.view.web.template.NabbleNamespace-nabble.view.web.template.NodeNamespace&breadcrumbs=notify_subscribers%21nabble%3Aemail.naml-instant_emails%21nabble%3Aemail.naml-send_instant_email%21nabble%3Aemail.naml>
Hans Yonathan
OpenERP Support
FALINWA Limited
Expert in Finance & Business Intelligence
OpenERP Silver Partner
Website: www.falinwa.com <http://www.falinwa.com>
------------------------------------------------------------------------
View this message in context: RE: [Openerp-community] Image store
problem in Odoo
<http://openerp-community.2306076.n4.nabble.com/Openerp-community-Image-store-problem-in-Odoo-tp4645755p4645761.html>
Sent from the OpenERP Community mailing list archive
<http://openerp-community.2306076.n4.nabble.com/> at Nabble.com.
_______________________________________________
Mailing list: https://launchpad.net/~openerp-community
<https://launchpad.net/%7Eopenerp-community>
Post to : openerp-community@xxxxxxxxxxxxxxxxxxx
<mailto:openerp-community@xxxxxxxxxxxxxxxxxxx>
Unsubscribe : https://launchpad.net/~openerp-community
<https://launchpad.net/%7Eopenerp-community>
More help : https://help.launchpad.net/ListHelp
_______________________________________________
Mailing list: https://launchpad.net/~openerp-community
Post to : openerp-community@xxxxxxxxxxxxxxxxxxx
Unsubscribe : https://launchpad.net/~openerp-community
More help : https://help.launchpad.net/ListHelp
Follow ups
References