我想做的是获取密码列表并在域过滤器中使用它。我尝试使用 for 循环它不起作用。及其显示错误。将列表传递到域过滤器的任何其他方式。如果我传入 write 函数,我可以写为列表列表,因为列表有 [[],[]] 值并显示错误。
in map.py
class MapPincodeMaster(models.Model):
_name = 'franchise.pincode.master'
#All pincodes stored in this master
name = fields.Many2one("res.partner",domain=[('partner_type', 'in', ('franchise','warehouse'))],string="Franchise",track_visibility='always')
franchise_pincode_line = fields.One2many("franchise.pincode.line","franchise_pincode_master") # its related to one2many field
demo = fields.Char('demo',compute='_compute_partner_franchise_pincode')
#### Compute to get the push the Franchise Pincode to Partner Form Field franchise_pincode_ids
def _compute_partner_franchise_pincode(self):
for i in self:
if i.franchise_pincode_line:
pin_list = [franc_pin_id.id for franc_pin_id in i.franchise_pincode_line]
i.name.write({'franchise_pincode_ids':[(6,0,pin_list)]}) #i pass pincode ids as list
# the contains list of pincodes
class MapPincodeLines(models.Model):
_name = 'franchise.pincode.line'
**pincode = fields.Many2one("city.city","Pincode",required=True)**
city = fields.Char("City")
franchise_pincode_master = fields.Many2one("franchise.pincode.master")
# I wanted to do is get list of pincodes and use it in domain filter
#### Create Partner Form Field as franchise_pincode_ids
class ResPartner(models.Model):
_inherit = 'res.partner'
franchise_pincode_ids = fields.Many2many('franchise.pincode.line'enter code here,'franchise_line_res_partner')
I wanted to do is get list of pincodes and use it in domain filter
in xml file domain
**<field name="domain">[('zip','in',[franc_pin_id.pincode.zip for franc_pin_id in user.partner_id.franchise_pincode_ids])]</field>**
#using pincode ids i get list of pincodes
但它会抛出错误。任何可能的方法都会在域过滤器中获得循环。在 pincode ids 中将 pincode 列表作为列表格式传递。 并且我还需要了解计算函数中的写入函数。wirte 方法不会在写入方法中获取嵌套列表