Хорошо, вот мой вопрос.Я пытаюсь добавить информацию в delivery.view_picking_withcarrier_out_form.а вот мой xml.
<record id="stock_carrier_form_view" model="ir.ui.view">
<field name="name">stock.carrier.form.view</field>
<field name="model">stock.picking</field>
<field name="inherit_id" ref="delivery.view_picking_withcarrier_out_form" />
<field name="priority" eval="99"/>
<field name="arch" type="xml">
<xpath expr="//div[@name='tracking']" position="after">
<field name="incoming_carrier_id"/>
</xpath>
</field>
</record>
вот этот питон:
class StockPicking(models.Model):
_inherit = 'stock.picking'
#add incoming carrier information
incoming_carrier_id = fields.Many2one('delivery.carrier', string='Carrier')
с этим xml кодом я получаю сообщение об ошибке «Поле carrier_tracking_ref
не существует», где carrier_tracking_refопределяется в delivery / modules / stock_picking.py и уже определен в delivery.view_picking_withcarrier_out_form.Я могу использовать это поле в методе вычисляемого поля, которое добавляется в stock.vpicktree, однако без проблем.Python:
#assign the carrier id for the treeview
@api.model
def _compute_carrier_tree(self):
for rec in self:
if rec.carrier_id:
rec.carrier_id_tree_view = rec.carrier_id
elif rec.incoming_carrier_id:
rec.carrier_id_tree_view = rec.incoming_carrier_id
carrier_id_tree_view = fields.Many2one('delivery.carrier', string='Carrier', compute='_compute_carrier_tree')
xml:
<record id="stock_carrier_tree_view" model="ir.ui.view">
<field name="name">stock.carrier.tree.view</field>
<field name="model">stock.picking</field>
<field name="inherit_id" ref="stock.vpicktree" />
<field name="arch" type="xml">
<xpath expr="//field[@name='partner_id']" position="after">
<field name="carrier_id_tree_view"/>
</xpath>
</field>
</record>
Почему добавление поля в представление не позволяет программе распознавать ранее существующее поле из другого модуля?