This question has been flagged
2 Replies
23215 Views

Hi gurus!

I'd like to know how to download uplodaded binary files in the original format, the way it's done for attachments.

Thanks in advance,

Manuel.

Avatar
Discard

+1 i'm also interested in this. Is there a built-in method in Odoo to convert between base64 and the original upload format for a specific file? Please post here back if you figure this out, i'll do likewise.

Not sure of what you mean by downloading uploaded binary files (which files are these?) On the base64 that @Luke mentioned, python string object had already provide methods for encoding (http://www.tutorialspoint.com/python/string_encode.htm) and decoding (http://www.tutorialspoint.com/python/string_decode.htm).

Author

Hi Ivan - do you know of any concrete example in any of the existing addons? I'd specially like to do it following the new API standards, thanks in advance.

@Manuel. Sorry, I haven't explored the new API standard yet. AFAIK, it should be the same regardless of the API standard. You can just try to search/grep for method name to search for example.

Best Answer

Sorry, i have not enught karma for comments

This works only in FormViews:

have you tried to add the attribute "filename" in your XML-File:

PY:

class my_binary(models.Model):
    _name = 'arts.bewerber'

    binary = fields.Binary('Binray')

    binary_fname = fields.Char('Binary Name')

XML:

<field name="binary" filename="binary_fname"/>

<field name="binary_fname" invisible="1"/>

 

Im actually loocking for an solution in TreeViews :-(

Avatar
Discard
Author Best Answer

Hi Marvin,

Yes I have indeed tried after your answer, but without success.. any other advice? The code:

class product_image(models.Model):
    _name = 'product.image'

    name = fields.Char(string='Name')
    image = fields.Binary(string='Image')
    image_fname = fields.Char(string='File name')
    product_tmpl_id = fields.Many2one('product.template', string='Product')

And the XML:

<field name="image" string="Image" filename="image_fname"/>
<field name="image_fname" invisible="1"/>

The filename is displayed on the binary field link, but when downloading the file it's a .bin file, not the original one.

Thanks,

Manuel.

Avatar
Discard