【问题标题】:How to use doctrine One-To-Many, Bidirectional?如何使用一对多、双向的学说?
【发布时间】:2019-01-13 22:03:50
【问题描述】:

我正在使用 symfony 和教义制作博客

我正在尝试通过 blog_id 值将博客文章中的行 ID 与 cmets 连接,但出现此错误

\Entity\BlogPosts.php

关联 App\Entity\BlogPosts#cmets 是指拥有方字段 App\Entity\Frontend\Blog\Fe_blog_cmets#blogId 不是定义为关联,而是定义为字段。

关联 App\Entity\BlogPosts#cmets 指不存在的拥有方字段 App\Entity\Frontend\Blog\Fe_blog_cmets#blogId。

我的实际代码是这样的

\Entity\BlogPosts.php

class BlogPosts
{
    /**
     * @ORM\OneToMany(targetEntity="App\Entity\Frontend\Blog\Fe_blog_comments", mappedBy="blogId")
     */
    private $comments;

    //...
}

\Entity\Frontend\Blog\Fe_blog_cmets.php

class Fe_blog_comments
{
    //...

    /**
     * @ORM\Column(type="integer")
     * @ORM\ManyToOne(targetEntity="App\Entity\BlogPosts", inversedBy="comments")
     * @ORM\JoinColumn(name="blog_id", referencedColumnName="id")
     */
    private $blogId;

    //...
}

【问题讨论】:

    标签: php mysql database symfony doctrine


    【解决方案1】:

    删除@ORM\Column(type="integer"),该列应由@ORM\JoinColumn(name="blog_id", referencedColumnName="id")管理

    【讨论】:

    • 当我删除整数定义时,我仍然收到错误关联字段“App\Entity\Frontend\Blog\Fe_blog_cmets#$blogId”的类型为“App\Entity\BlogPosts”的预期值,得到“整数”而是
    • 你的方案是最新的吗?
    • 是的,它是最新的
    • 清除缓存等。这应该是真正的问题。
    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2017-02-13
    • 1970-01-01
    相关资源
    最近更新 更多