Bỏ qua để đến Nội dung
Menu
Câu hỏi này đã bị gắn cờ
6 Trả lời
17882 Lượt xem

Hi,

How can I read content of binary field in Odoo8.

I added a fileds.Binary in my model and can browse file in view but I can't read It content.  

Please to give an exemple about how to browse a file and read It content in Odoo8 ?

 

Ảnh đại diện
Huỷ bỏ

could you please give more details, did you meant about reading values from text file?

Câu trả lời hay nhất

hii Omar OUHARI ,

below code help to read content of file after browse. and file is my fields.binary field. hope so this will help you.

base64.encodestring(args.get('file').read())

Ảnh đại diện
Huỷ bỏ

please can you help me i use a txt field and store it as binary but when i upload it i find this: ÓMuÓM4

@Drees could you please give more details, did you meant about reading values from text file?

Câu trả lời hay nhất

Hello Omar,

I see that your post is from 2015, but I had the same problem in 2019  :)

However I found a solution and I'm sharing it for someone who is experiencing the same issue.

In Ir_http.py there is a method  called binary_content, which returns a binary field content and some other info. You can use it in any model or controller with the following import:

from odoo.addons.web.controllers.main import binary_content

* Tested on Odoo 11 Community version

Regards,

Lyubo.

Ảnh đại diện
Huỷ bỏ
Câu trả lời hay nhất

Hi, 

this is what worked for me:

with io.BytesIO(base64.b64decode(self.binary_field_name)) as f:
    # do stuff with the contents here as if it were a file    
Best regards,
David


Ảnh đại diện
Huỷ bỏ
Bài viết liên quan Trả lời Lượt xem Hoạt động
2
thg 7 20
27724
2
thg 12 23
25357
1
thg 3 15
3411
0
thg 3 15
3915
1
thg 3 15
4144