我有一个自定义对象“ Car”,它与另一个对象“ Trips”有一个一对多的关系,该对象捕获了汽车的各种行程。我将行程添加到了汽车的窗体视图中,这样我就可以看到所有的行程每辆车。我在sale.order中创建了一个与“ Car”相关的自定义many2one字段,称为“ x_car”,并将其添加到sale.order表单视图中。现在,我也想添加一个one2many字段,该字段将显示在sale.order表单视图中选择汽车时的行车路线。我该如何实现?
我已经尝试在sale.order(trips,car_id)中创建一个one2many字段,并设置与x_car.trips相关的
我希望它会基于所选的x_car从Trips中提取所有记录,但它不会返回任何数据。我知道一个one2many关系通常基于object_id(在本例中为sale_order_id),但是有没有办法基于x_car?
答案 0 :(得分:0)
您可以将计算的many2many字段用于此类目的:
class SaleOrder(models.Model):
_inherit = "sale.order"
car_id = fields.Many2one(comodel_name="car")
trip_ids = fields.Many2many(
comodel_name="trip", string="Trips",
compute="_compute_trip_ids")
@api.multi
@api.depends('car_id')
def _compute_trip_ids(self):
for order in self:
order.trip_ids = order.car_id.trip_ids.ids
我敢打赌,您的字段名称或与我的示例略有出入,但我始终尝试遵守Odoo准则。只需用您的名字代替它们;-)