0

我有 5 个有关系的表。

表用户和文章有关系:

在用户中:

/**
 * @ORM\OneToMany(targetEntity="Article", mappedBy="author")
 *      
 * @var ArrayCollection $articles
 */
protected $articles;

在文章中:

/**
 * @ORM\ManyToOne(targetEntity="User", inversedBy="articles")
 *
 */
protected $author;

我创建新文章:

$article = new Article();
$article->setTitle("title");
$article->setText("Text test");
$article->setType("image");
$em->persist($article);
$em->flush();

我将文章添加到用户:

$user->addarticle($article);
$em->persist($user);
$em->flush();

文章保存在数据库中,但在字段中没有任何数据:author_id

当我将文章添加到用户以自动保存在表格文章中时如何建立关系author_id

4

1 回答 1

0

试试这个架构。在用户中:

/**
 * @ORM\OneToMany(targetEntity="Article", mappedBy="author")
 */
protected $articles;

在文章中:

/**
 * @ORM\ManyToOne(targetEntity="User", inversedBy="articles")
 * @ORM\JoinColumn(name="author_id", referencedColumnName="id")
 */
protected $author;

生成实体并更新架构。

$article = new Article();
$article->setTitle("title");
$article->setText("Text test");
$article->setType("image");
$article->setAuthor($user);
$em->persist($article);
$em->flush();
于 2012-06-26T08:46:04.383 回答