【发布时间】:2021-04-02 20:37:36
【问题描述】:
我添加了一个归档公司(这是一个字符字段),在创建付款时,我想设置默认值。 创建新付款时,该值未显示在表单视图中。但是,在打印 'my_company' 时,我得到了正确的结果。 请问怎么了?
class AccountPayment(models.Model):
_inherit = "account.payment"
@api.model
def get_company(self):
if self.move_type == 'in_invoice':
my_company = self.env.user.company_id.name
self.company = my_company
else:
self.company = ''
company = fields.Char(string='Company ', default=get_company)
谢谢。
【问题讨论】:
-
试试这个:company_id = fields.Many2one('res.company', 'Company', default=lambda self: self.env['res.users'].browse(self.env.uid ).company_id.id) 这将获取当前登录用户的公司并在该字段中分配它
-
@Muhammad Yusuf,我添加的字段是 char 字段,我不会将其更改为 Many2one 字段,此外,我还有另一个 move_type 条件。这就是我添加函数“get_company”的原因,我可以在其中添加条件。谢谢。
-
新建付款时,move_type值为空,所以结果总是空引号。
-
@Tiki ,是的,另外,当我尝试使用时问题仍然存在:如果 self.payment_type == 'outbound' ,我怎样才能获得区分供应商和客户付款的正确条件?
标签: javascript python xml odoo