Python 如何添加、创建和编辑表单?

Python 如何添加、创建和编辑表单?,python,xml,odoo,Python,Xml,Odoo,我想为下面的pname字段添加创建和编辑选项。在新表单中,我只需要一个字段,在添加名称后保存它,它应该显示在选择列表中,即添加了新的nmae from openerp.osv import fields, osv class asset_asset(osv.osv): _inherit = "asset.asset" _columns = { 'asse_line':fields.one2many('asset.line','emp_id','Name Plat

我想为下面的pname字段添加创建和编辑选项。在新表单中,我只需要一个字段,在添加名称后保存它,它应该显示在选择列表中,即添加了新的nmae

from openerp.osv import fields, osv

class asset_asset(osv.osv):
    _inherit = "asset.asset"
    _columns = {
        'asse_line':fields.one2many('asset.line','emp_id','Name Plate'),
    }
asset_asset()

class asset_line(osv.osv):
    _name="asset.line"
    APPOINTMENT_SELECTION=[
        ('0','Regular'),
        ('1','Aditional'),
        ('2','Deputation'),

    ]
    _columns = {
        'pname':fields.selection(APPOINTMENT_SELECTION,'Parameter Type'),
        'vsurname':fields.char('Value'),

        'emp_id': fields.many2one('asset.asset', 'vendor_id'),
    }

asset_line()

更好的方法是,您应该为pname field创建一个新对象,作为manyOne field

有些人是这样想的

class pname_line(osv.osv):
    _name='pname.line'
    _columns = {
        'code':fields.char('Code'),
        'name':fields.char('Name'),
    }
并将asset.line中的该对象用作manyOne

class asset_line(osv.osv):
    _columns = {
        'pname_id':fields.many2one('pname.line','Pname'),
        'vsurname':fields.char('Value'),
        'emp_id': fields.many2one('asset.asset', 'vendor_id'),
    }
我希望这会对您有所帮助:)