İçereği Atla
Menü
Bu soru işaretlendi
2 Cevaplar
4987 Görünümler

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





















Avatar
Vazgeç
En İyi Yanıt

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

Avatar
Vazgeç
En İyi Yanıt

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')


Avatar
Vazgeç
İlgili Gönderiler Cevaplar Görünümler Aktivite
2
Ağu 23
2646
1
Tem 23
2813
0
Tem 23
2356
1
Tem 23
2276
0
Tem 23
2277