如何在 odoo 9 中创建自动增量字段
how to create auto increment field in odoo 9
在我的模型中,我想创建自动增量字段,不幸的是,我尝试遵循一些 tuts,所有教程都只在 odoo 8 下工作。
在这个 link 中,我只是按照 odoo 9 中的一些威胁的指示进行操作
它正在通过 https://whosebug.com/users/3734244/danidee 的回答工作
但仍然不适合我。这是我的模型:
class cashadvance(osv.osv):
_name = 'comben.cashadvance'
_columns = {
'sequence_id': fields.char(string='Sequence ID', help="Auto Generate"),
}
@api.model
def create(self, vals):
vals['sequence_id'] = self.env['ir.sequence'].get('seq.cashadvance')
return super(cashadvance, self).create(vals)
这是我的 xml :
<?xml version="1.0" encoding="utf-8"?>
<openerp>
<data noupdate="1">
<record id="cashadvance_seq" model="ir.sequence">
<field name="name">No_PD</field>
<field name="padding">3</field>
<field name="code">seq.cashadvance</field>
</record>
</data>
</openerp>
上面的代码没有显示错误,但是当我点击保存按钮时 sequence_id 字段保持空白。
请帮助我...
尝试使用以下代码。
用
替换创建方法
@api.model
def create(self, vals):
vals['sequence_id'] = self.env['ir.sequence'].get('comben.cashadvance')
return super(cashadvance, self).create(vals)
用
替换xml文件
<?xml version="1.0" encoding="utf-8"?>
<openerp>
<data noupdate="1">
<record id="cashadvance_seq" model="ir.sequence">
<field name="name">No_PD</field>
<field name="padding">3</field>
<field name="code">comben.cashadvance</field>
</record>
</data>
</openerp>
之后重启odoo服务器并升级你的模块。
注意:
当你升级模块时,它有 .xml 文件 将不会升级。所以首先删除 noupdate="1" 属性并升级模块。检查流量。它应该工作正常。不要忘记在序列视图文件中再次放置 noupdate="1"。
确保您已经在 __ openerp__.py 文件
中提供了 .xml 文件
在我的模型中,我想创建自动增量字段,不幸的是,我尝试遵循一些 tuts,所有教程都只在 odoo 8 下工作。
在这个 link 中,我只是按照 odoo 9 中的一些威胁的指示进行操作
class cashadvance(osv.osv):
_name = 'comben.cashadvance'
_columns = {
'sequence_id': fields.char(string='Sequence ID', help="Auto Generate"),
}
@api.model
def create(self, vals):
vals['sequence_id'] = self.env['ir.sequence'].get('seq.cashadvance')
return super(cashadvance, self).create(vals)
这是我的 xml :
<?xml version="1.0" encoding="utf-8"?>
<openerp>
<data noupdate="1">
<record id="cashadvance_seq" model="ir.sequence">
<field name="name">No_PD</field>
<field name="padding">3</field>
<field name="code">seq.cashadvance</field>
</record>
</data>
</openerp>
上面的代码没有显示错误,但是当我点击保存按钮时 sequence_id 字段保持空白。 请帮助我...
尝试使用以下代码。
用
替换创建方法@api.model
def create(self, vals):
vals['sequence_id'] = self.env['ir.sequence'].get('comben.cashadvance')
return super(cashadvance, self).create(vals)
用
替换xml文件<?xml version="1.0" encoding="utf-8"?>
<openerp>
<data noupdate="1">
<record id="cashadvance_seq" model="ir.sequence">
<field name="name">No_PD</field>
<field name="padding">3</field>
<field name="code">comben.cashadvance</field>
</record>
</data>
</openerp>
之后重启odoo服务器并升级你的模块。
注意:
当你升级模块时,它有 .xml 文件 将不会升级。所以首先删除 noupdate="1" 属性并升级模块。检查流量。它应该工作正常。不要忘记在序列视图文件中再次放置 noupdate="1"。
确保您已经在 __ openerp__.py 文件
中提供了 .xml 文件