Warning: file_get_contents(/data/phpspider/zhask/data//catemap/0/xml/15.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Python 如何解决此错误:';产品模板';没有属性';生成ean13';?_Python_Xml_Python 2.7_Odoo_Odoo 9 - Fatal编程技术网

Python 如何解决此错误:';产品模板';没有属性';生成ean13';?

Python 如何解决此错误:';产品模板';没有属性';生成ean13';?,python,xml,python-2.7,odoo,odoo-9,Python,Xml,Python 2.7,Odoo,Odoo 9,我使用的是Odoo9,我创建了一个自定义模块,用于生成产品条形码。我已经在产品模板表单中创建了一个自定义按钮,该按钮生成条形码并将其插入到字段条形码中。但每次我按下“生成ean13”按钮时,就会出现这个错误,我不知道该怎么办。这是我的代码: product_view.xml 我的回溯 Traceback (most recent call last): File "D:\Projet_Odoo\Odoo 9.0-20180426\server\.\openerp\http.py", line 6

我使用的是Odoo9,我创建了一个自定义模块,用于生成产品条形码。我已经在产品模板表单中创建了一个自定义按钮,该按钮生成条形码并将其插入到字段
条形码中。但每次我按下“生成ean13”按钮时,就会出现这个错误,我不知道该怎么办。这是我的代码:

product_view.xml
我的回溯

Traceback (most recent call last):
File "D:\Projet_Odoo\Odoo 9.0-20180426\server\.\openerp\http.py", line 650, 
in _handle_exception
File "D:\Projet_Odoo\Odoo 9.0-20180426\server\.\openerp\http.py", line 687, 
in dispatch
File "D:\Projet_Odoo\Odoo 9.0-20180426\server\.\openerp\http.py", line 323, 
in _call_function
File "D:\Projet_Odoo\Odoo 9.0-20180426\server\.\openerp\service\model.py", 
line 118, in wrapper
File "D:\Projet_Odoo\Odoo 9.0-20180426\server\.\openerp\http.py", line 316, 
in checked_call
File "D:\Projet_Odoo\Odoo 9.0-20180426\server\.\openerp\http.py", line 966, 
in __call__
File "D:\Projet_Odoo\Odoo 9.0-20180426\server\.\openerp\http.py", line 516, 
in response_wrap
File "D:\Projet_Odoo\Odoo 9.0- 
20180426\server\openerp\addons\web\controllers\main.py", line 900, in 
call_button
File "D:\Projet_Odoo\Odoo 9.0- 
20180426\server\openerp\addons\web\controllers\main.py", line 888, in 
_call_kw
 AttributeError: 'product.template' object has no attribute 'generate_ean13'

我看到了几个错误

首先,不要使用
\u列
字典,这是在旧api中使用的。因此,像这样声明字段
ean\u sequence\u id

ean_sequence_id = fields.Many2one(
    string='Ean sequence',
    comodel_name='ir.sequence',
)
按钮调用的方法应具有
@api.multi
装饰器:

@api.multi
def generate_ean13(self):
    for record in self:
        if not record.barcode:
            barcode = record._generate_ean13_value(record)
            if barcode:
                record.write({'barcode': barcode})

谢谢,但即使进行了修改,它也显示了相同的错误。你能在问题中显示整个错误堆栈跟踪吗?奇怪的问题:但是你导入了模板扩展吗?(
\uuuu init\uuuuu.py
ean_sequence_id = fields.Many2one(
    string='Ean sequence',
    comodel_name='ir.sequence',
)
@api.multi
def generate_ean13(self):
    for record in self:
        if not record.barcode:
            barcode = record._generate_ean13_value(record)
            if barcode:
                record.write({'barcode': barcode})