在account.invoice模型中,我们与payment.term模型有很多关系:
payment_term_id = fields.Many2one('account.payment.term',
string='Payment Terms',
oldname='payment_term',
readonly=True,
states={'draft': [('readonly', False)]})
我想在payment.term模型中创建一个方法,该方法在我们输入付款条款表单的地方调用account.invoice记录的id。这怎么可能用python代码?我知道用xml代码执行此操作我们使用context
context="{'default_invoice_id': active_id}"
但我需要在python代码中执行此操作。
答案 0 :(得分:0)
最简单的方法是:
将payment_term_id
模型中的字段account_invoice
更改为:
payment_term_id = fields.Many2one(comodel_name='account.payment.term',
string='Payment Terms',
inverse_name='invoice_ids',
oldname='payment_term',
readonly=True,
states={'draft': [('readonly', False)]})
在其他模型account.payment.term
中添加字段:
类AccountPaymentTerm(models.Model):
_name = 'account.payment.term'
_description = 'Payment term'
_inherit = 'account.payment.term'
invoice_ids = fields.Many2one(
string='invoices',
comodel_name='account.invoice',
required=True,
ondelete='cascade',
)