Skip to Content
เมนู
คุณต้องลงทะเบียนเพื่อโต้ตอบกับคอมมูนิตี้
คำถามนี้ถูกตั้งค่าสถานะ
2 ตอบกลับ
4855 มุมมอง

Then I create some fields of selection type this WARNING appear for every field . 


I have this table as header... 


class FreightSettlement(models.Model):
_name = 'freight.settlement'
_description = 'Freight Settlement'

name = fields.Char(string="Name")
invoice_ids = fields.One2many("freight.settlement.invoice", "parent_id", string="Freight Settlement Invoice")
state = fields.Selection(
[
('draft', 'Draft'),
('done', 'Done'),
], default='draft', string='State'
)

And this as detail... 


class FreightSettlementInvoice(models.Model):
_name = "freight.settlement.invoice"
_description = "Freight Settlement Invoice"

parent_id = fields.Many2one("freight.settlement", string="Freight Settlement")
parent_state = fields.Selection(
[
('draft', 'Draft'),
('done', 'Done'),
], related='parent_id.state', string='State'
)


Then in the server log I get this WARNING. 


2022-07-25 20:16:59,929 1 WARNING staging-data-2 odoo.fields: freight.settlement.invoice.parent_state: selection attribute will be ignored as the field is related


How to solve this WARNING?


Thanks in advance





















อวตาร
ละทิ้ง
คำตอบที่ดีที่สุด

Hi,

In the  frieght.settlement.invoice model, define the field parent_state as follows:

parent_state = fields.Selection(related='parent_id.state', string='State' )


Thanks

อวตาร
ละทิ้ง
คำตอบที่ดีที่สุด

Hi !
you have created two select boxes, one is linked to the other, and in both places you have specified select options.
You just have to remove options from second Class.
Like this .

class FreightSettlement(models.Model):
_name = 'freight.settlement'
_description = 'Freight Settlement'

name = fields.Char(string="Name")
invoice_ids = fields.One2many("freight.settlement.invoice", "parent_id", string="Freight Settlement Invoice")
state = fields.Selection(
[
('draft', 'Draft'),
('done', 'Done'),
], default='draft', string='State'
)

class FreightSettlementInvoice(models.Model):
_name = "freight.settlement.invoice"
_description = "Freight Settlement Invoice"

parent_id = fields.Many2one("freight.settlement", string="Freight Settlement")
parent_state = fields.Selection(related='parent_id.state', string='State')


Have to write like this
parent_state = fields.Selection(related='parent_id.state', string='State')


อวตาร
ละทิ้ง
Related Posts ตอบกลับ มุมมอง กิจกรรม
2
ส.ค. 23
2456
1
ก.ค. 23
2615
0
ก.ค. 23
2249
1
ก.ค. 23
2167
0
ก.ค. 23
2071