日历视图中的odoo 10 Many2many字段
odoo 10 Many2many field in calendar view
我在 odoo 中创建了一个 many2many 字段,但是当我在日历视图中查看它时它显示了 id 但我想要显示名称。
字段定义为:
doctor = fields.Many2many('crm.account.doctor.line',
'crm_account_doctor_name',
'doctor_name','id', required=True)
XML:
<record id="doctor_calender" model="ir.ui.view">
<field name="model">plan.new</field>
<field name="arch" type="xml">
<calendar color="state" date_start="date" mode="month" quick_add="False" >
<field name="doctor" write_model="crm.account.doctor.line" write_field="doctor" avatar_model="crm.account.doctor.line"/>
</calendar>
</field>
</record>
我不知道有什么好方法可以满足您的要求。我要做的是用您要查找的显示字符串定义一个计算字段,并在视图中使用它。
display_doctor = fields.Char(string='Display String for doctor field',
compute='_compute_display_doctor')
def _compute_display_doctor(self):
'''
Compute the display string for the doctor field
'''
for record in self:
display_str = ','.join(record.doctor.mapped('name'))
record.display_doctor = display_str
然后在 xml 中您可以使用该字段而不是 many2many
版本。
我在 odoo 中创建了一个 many2many 字段,但是当我在日历视图中查看它时它显示了 id 但我想要显示名称。
字段定义为:
doctor = fields.Many2many('crm.account.doctor.line',
'crm_account_doctor_name',
'doctor_name','id', required=True)
XML:
<record id="doctor_calender" model="ir.ui.view">
<field name="model">plan.new</field>
<field name="arch" type="xml">
<calendar color="state" date_start="date" mode="month" quick_add="False" >
<field name="doctor" write_model="crm.account.doctor.line" write_field="doctor" avatar_model="crm.account.doctor.line"/>
</calendar>
</field>
</record>
我不知道有什么好方法可以满足您的要求。我要做的是用您要查找的显示字符串定义一个计算字段,并在视图中使用它。
display_doctor = fields.Char(string='Display String for doctor field',
compute='_compute_display_doctor')
def _compute_display_doctor(self):
'''
Compute the display string for the doctor field
'''
for record in self:
display_str = ','.join(record.doctor.mapped('name'))
record.display_doctor = display_str
然后在 xml 中您可以使用该字段而不是 many2many
版本。