2015-09-29 95 views
4

的文件名我使用Odoo8更改上傳二進制文件場

我有我用fields.binary在Odoo上傳文件/ s的問題。但是當我嘗試下載時,上傳文件的filename就是型號名稱。

是否可以更改文件的filename

而第二個字段中的filters屬性不起作用。

+0

能否請您分享您的代碼,以便我們可以幫助你更好的。 –

回答

2

我解決這件事情/問題,首先創建一個計算領域,其功能

的.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> 
+0

幹得好!這會非常有幫助。 –

0

我有同樣的問題,並解決它的下列解決方案:

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" /> 

而且,這裏是結果:

enter image description here