【发布时间】:2015-09-29 03:50:51
【问题描述】:
我正在使用 Odoo8
我有一个问题,我使用fields.binary 在 Odoo 中上传文件。但是当我尝试下载它时,上传文件的filename 是型号名称。
是否可以更改文件的filename?
其次,字段中的过滤器属性不起作用。
【问题讨论】:
-
能否分享您的代码,以便我们更好地帮助您。
标签: openerp odoo odoo-8 openerp-8
我正在使用 Odoo8
我有一个问题,我使用fields.binary 在 Odoo 中上传文件。但是当我尝试下载它时,上传文件的filename 是型号名称。
是否可以更改文件的filename?
其次,字段中的过滤器属性不起作用。
【问题讨论】:
标签: openerp odoo odoo-8 openerp-8
我对这个问题/问题的解决方案,首先创建一个计算字段及其函数
.py
filename = fields.Char('file name', readonly = True,store = False,compute ='legacy_doc1_getFilename')
@api.one
def legacy_doc1_getFilename(self):
if len(self.employee_number) > 0:
self.filename = str(self.employee_number) + '_ConfidentialReports.pdf'
else:
self.filename = 'filename_ConfidentialReports.pdf'
在 XML 文件中添加属性文件和字段
<page string="Legacy Documents">
<group>
<field name="filename" readonly="1" invisible="1"/>
<field name="legacy_doc_1" filename="filename"/>
</group>
</page>
【讨论】:
我遇到了同样的问题,下面的解决方案解决了它:
class MyModel(models.Model):
_name = 'my.model'
name = fields.Char(string='Name')
image = fields.Binary(string='Image', required=True)
image_filename = fields.Char(string='Image Filename')
在xml中:
<field name="name" />
<field name="image_filename" invisible="1"/>
<field widget="binary" height="64" name="image" filename="image_filename" />
结果如下:
【讨论】: