如何从OpenERP中的类自动创建用户?

时间:2015-09-08 10:03:07

标签: python openerp odoo

我想创建一个类,并将fullname中的firstname和lastname结合起来,以此全名来创建用户。

2 个答案:

答案 0 :(得分:1)

我使用了像这样的onchange函数 我希望它可以帮助你。

在python中:

def onchange_fullname(self, cr, uid, ids, fname, lname, context=None):

    fullname = '%s %s' % (fname,lname)
    # It will add fname(First Name) and lname(Last Name) and assign to  fullname
    return {'value':{'fullname':fullname}}

在XML中:

<field name="name" />
<field name="lname" on_change="onchange_fullname(fname,lname)" />
<field name="fullname" />

输入lname(姓氏)后,按Tab键。 它会自动填写字段fullname

答案 1 :(得分:1)

是的,我这样做是看起来像我的代码

def onchange_fullname(self, cr, uid, ids, fname, lname, context=None):
    value = {}
    fullname=""
    for record in self.browse(cr, uid, ids, context=context):
        fullname = '%s %s' % (record.fname or '', record.lname or '')
    # It will add fname(First Name) and lname(Last Name)
    return {value:{'name':fullname}}

_name = 'parent.parent'
_table = "parent_parent"
_description = 'Parent Information'
_inherits = {'res.users': 'user_id'}

_columns = {

    'user_id': fields.many2one('res.users', 'User ID', ondelete="cascade", select=True, required=True),
    'parent_name':fields.related('user_id', 'name', type='char', relation='parent.parent', string='Full Name'),
    'fname': fields.char('First name', size=64),
    'lname': fields.char('Last name', size=64),
    'address_ids' : fields.one2many('res.partner', 'parent_id', 'Contacts'),
    'fonction': fields.char('Fonction',size=64,required="True"),
    'parent_id': fields.many2one('parent.parent', 'name'),
    'street': fields.char('Street', size=128, required=True,),
    'zip': fields.char('Zip', change_default=True, size=24, required=True,),
    'city': fields.char('City', size=128,),
    'state_id': fields.many2one("res.country.state", 'State', required=True,),       
    'country_id': fields.many2one('res.country', 'Country', required=True,),
    'contact_phone':fields.related('parent_id', 'phone', type='char', relation='parent.parent', string='Téléphone Fixe', required=True,),
    'contact_mobile':fields.related('parent_id', 'mobile', type='char', relation='parent.parent', string='Téléphone mobile', required=True,),
    'contact_email':fields.related('parent_id', 'user_email', type='char', relation='parent.parent', string='Email', required=True,),}