0
如何使用代理继承我的自定义模型创建用户?请用示例代码解释。其实我需要创建用户,当有人在我的自定义模型中注册。提前感谢...当使用代理继承创建自定义记录时,在odoo8中自动创建用户
如何使用代理继承我的自定义模型创建用户?请用示例代码解释。其实我需要创建用户,当有人在我的自定义模型中注册。提前感谢...当使用代理继承创建自定义记录时,在odoo8中自动创建用户
让我们举个例子吧。
假设我创建了TestModel。
class TestModel(models.Model):
_name = 'test.model'
name = fields.Char('Name', required=1)
email = fields.Char('Field')
user_id = fields.Many2one('res.users', 'Related User')
现在我想在创建测试模型记录时创建一个用户。所以我将修改TestModel的创建方法来创建用户。
@api.model
def create(self, vals):
user_env = self.env['res.users']
user_vals = {
'name': self.name,
'login': self.email,
}
user_id = user_env.create(user_vals) # will create user with name and login field
self.user_id = user_id
super(TestModel,self).create(vals)
@api.multi
def unlink(self):
for rec in self:
if rec.user_id:
rec.user_id.unlink()
return super(TestModel, self).unlink()
感谢您的快速回复Atul Arvind。但在我的情况下,当我删除自定义模型上的记录(在你的例子中它是test.model)会自动删除相应的用户。这就是为什么我要通过授权寻找继承权。有没有范围?提前致谢。 – Sujith
@Sujith请检查最新的答案。 –
再次感谢您的帮助。代码正常工作。但那个相关用户仍然存在于res.users表中。有没有可能删除那个..?或者这是我的测试问题? – Sujith