This question has been flagged
4 Replies
12564 Views

Hi

I Have in my wizard:

datas = fields.Binary('File')
filename = fields.Char('File Name')

and in .xml :

<field name="datas" filename="filename" />
<field name="filename" invisible="1"/>

But the field datas always has a string encoded


Avatar
Discard




Cordialement,
Marwa ROMDHAN
Diplôme Ingénieur Informatique option Génie Logiciel de l'ENIS promotion 2013
Consultante Technico-Fonctionnel Odoo (3 ans d’expérience)
Tel: (+216) 55 010 671  
Skype marwa.romdhan
Facebook LinkedIn Google Plus Page 

2017-08-02 5:33 GMT+01:00 Avinash Nk <avinashnk916@gmail.com>:

A new answer on filename of field binary not worked , it is encoded has been posted. Click here to access the post :

See post

--
Avinash Nk


Sent by Odoo S.A. using Odoo.


Best Answer


<field name="datas" filename="filename" />

TO

<field name="datas"  widget="binary"  filename="filename" />

sure........ it will work.

Avatar
Discard
Best Answer

Hi marwa,
      
         The file_name field contains the name of the file you are uploading.
          
         The datas field contains the file you are uploading.
 
For decoding that file, you can use base64decoding. 

import base64
from odoo import api, fields, models

class YourClass(models.TransientModel):
_name = 'your.wizard'

datas = fields.Binary(string="File")
file_name = fields.Char(string="File Name")

@api.multi
def your_function(self):
file_encoded = base64.b64decode(self.datas)
Avatar
Discard
Author Best Answer

Thanks for your response,

But I mean, In My view form I don't have the file name .

I have the content of file decoded !! I would appear the file name

Avatar
Discard