繁体   English   中英

One2Many 关系没有带有 ID 的基础 model

One2Many Relation does not have base model with ID

提示:本站收集StackOverFlow近2千万问答,支持中英文搜索,鼠标放在语句上弹窗显示对应的参考中文或英文, 本站还提供   中文繁体   英文版本   中英对照 版本,有任何建议请联系yoyou2525@163.com。

我们目前有以下架构;


type Post struct {
    ID string `pg:",pk" json:",omitempty"`
    CreatorID string `pg:",notnull"`
    Creator   *User  `pg:",rel:has-one,fk:creator_id"`
    Groups   Groups  
    Reactions Reactions `pg:",rel:has-many" json:",omitempty"`
}

type Reaction struct {
    ID string `pg:",pk" json:",omitempty"`

    Type ReactionType `pg:",notnull"`

    CreatorID string `pg:",notnull"`
    Creator   *User  `pg:",rel:has-one,fk:creator_id"`

    PostID string  `pg:",notnull"`
    Post   *Post `pg:",rel:has-one,fk:post_id"`
}

当尝试使用以下查询查询所有帖子(包括其反应关系)时,我们收到以下错误消息; pg: relation=\"Reactions\" does not have base model=Post with id=\"\" (check join conditions)

func (pm PGPostRepo) selectQuery(model ...interface{}) *orm.Query {
    return pm.db.Model(model...).
        Relation("Creator.id").
        Relation("Creator.given_name").
        Relation("Creator.family_name").
        Relation("Reactions.type").
        Column("post.*")
        Where("post.id = ?", postID).
        Select()
}

我实际上对此很迷茫,好像我们用 Relation Relation("Reaction.*")替换Relation("Reaction.type") ) 我们没有收到错误(尽管CreatorPost都是 null),但是我们'正在检索比我们想要的更多的列。

1 个回复

我不是专业人士,但不是 model 后的反应。 它应该是Reactions Reaction...而不是Reactions Reactions... 因为 model 是反应,而不是反应。 我希望它能解决问题,我不是傻子。

1 一个一对多的关系,带孩子的父母

我们如何将两行以上合并在一起以避免出现以下错误。 操作失败:由于一个或多个外键属性不可为空,因此无法更改该关系。 对关系进行更改时,相关的外键属性将设置为空值。 如果外键不支持空值,则必须定义新的关系,必须为外键属性分配另一个非空值,或者必须删除不相关的对象。 更新: ...

2 在odoo的one2many关系中隐藏字段

我有这个类: project.task有这个领域: 在project.task.line类中,我有这一行: 在我的 xml 代码中,我现在有: 现在我想要的是,当状态为草稿时,树视图中名为进度的字段应该是不可见的。 我改变了这样的进度字段: 但它不起作用。 我收到此错误: Error ...

4 具有一对多关系的many2one默认值

我有以下代码: (还有一个简单的xml,可使用这些列获取表单和树) 当我以table.a的形式通过列表“链接到B”在table.b中创建记录时,是否可以在“ link_to_a”中具有链接的默认值? 怎么样 ? 提前致谢。 ...

2014-02-17 22:19:24 0 373   openerp
5 关系字段Many2one和One2many中的AttributeError

所以我创建了字段之间的关系,以便能够在视图中添加多个条目为此的上下文 - “这以前不是网格,只是要填充的一组字段,但现在我们必须能够添加多个条目" 因此我创建了一个新的 model 和另一个 model 的字段之间的关系,该字段继承自 "project.project" 但是当尝试保存条目时会弹出 ...

6 在向导中显示 model 的 one2many 值

我有一个 class salesin,其中有一个 one2many 字段 eidetails。 在这里,我定义了一个指向向导 saleswizard 的按钮。 我需要实现的是当我单击按钮时,打开的向导应包含 class 中的 emidetails one2many 字段。如何 ''' '''' ...

2019-11-16 16:43:15 0 5   wizard
7 在向导中显示 model 的 one2many 值

我有一个 class salesin,其中有一个 one2many 字段 eidetails。 在这里,我定义了一个指向向导 saleswizard 的按钮。 我需要实现的是当我单击按钮时,打开的向导应包含 class 中的 emidetails one2many 字段。如何 ''' ...

2019-11-17 06:59:49 1 91   odoo
8 读取继承的 model 中的 one2many 字段

在 odoo v13 中, crm.lead model 由sale_crm模块继承和修改。 在sale_crm模块中,继承了 model crm.lead并添加了one2many字段order_ids 。 这是与lead客户关联的销售订单数组。 我正在尝试继承crm.lead model,并创建一 ...

9 odoo:从one2many关系更新父字段

我有一个模型具有2个one2many关系(mat_gen和rh_gen)。 第一个关系有一个名为“ qte”的字段,当“ qte”用onchange方法更改时,我想更新第二个关系。 在这里,我必须访问父模型以更新第二个关系,如self.parent.update({'rh_gen':t ...

10 在一对多关系中覆盖字段的“只读”属性

让我们假设以下代码: 这是一个示例,仅用于说明one2many字段的表单视图的定义。 有没有方法可以覆盖在object_ids子字段( object_name )中设置的readonly属性? 在这种情况下,我的整个表单视图对于指定的状态将是只读的,但是我想绕过/覆盖特定字段 ...

2019-05-28 08:08:59 2 69   xml/ odoo
暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2022 STACKOOM.COM