鉴于名为'Foo'的自定义模型,我想在其中添加“标签”。
我正在尝试以下代码,但收到以下错误:
ProgrammingError: relation "_unknown" does not exist LINE 1:
...rel._unknown_id FROM _unknown_proposal_block_rel, "_unknown"
另外,检查psql:
select * from ir_model_relation;
...
111 | 2017-10-22 10:51:00.440656 | 2017-10-22 10:51:00.440656 | 359 | 353 | _unknown_foo_rel | | | |
可以看出,这些名字没有被恰当地采用。
我正在使用的代码:
class FooTag(models.Model):
_name = 'foo_tag'
_description = 'Foo Tag'
tag = fields.Char('Tag')
class Foo(models.Model):
_name = 'foo'
_description = 'Foo Model'
name = fields.Char('Name', required=True)
content = fields.Text('Foo Content')
tag_ids = fields.Many2many('foo.tag', string='Tags')
这是正确的做法吗?
以下是视图的代码:
<record id="view_form_foo" model="ir.ui.view">
<field name="name">Foo Form</field>
<field name="model">foo</field>
<field name="arch" type="xml">
<form string="Foo">
<sheet>
<group>
<field name="name"/>
<field name="tag_ids" widget="many2many_tags"/>
<field name="content"/>
</group>
</sheet>
</form>
</field>
</record>
欢迎任何提示。
答案 0 :(得分:0)
发现问题,它是:
tag_ids = fields.Many2many('foo_tag', string='Tags')
而不是:
tag_ids = fields.Many2many('foo.tag', string='Tags')