gpt4 book ai didi

php - Doctrine 2.1 - 实体插入

转载 作者:可可西里 更新时间:2023-11-01 00:16:17 26 4
gpt4 key购买 nike

我对将实体插入数据库有疑问。我有两个模型:

class News {
/**
* @Column(type="string", length=100)
* @var string
*/
protected $title;

/**
* @ManyToOne(targetEntity="User", inversedBy="news")
* @JoinColumn(referencedColumnName="id")
*/
protected $author;

}

class User {
/**
* @Id @GeneratedValue @Column(type="integer")
* @var integer
*/
protected $id;

/**
* @OneToMany(targetEntity="News", mappedBy="author")
*/
protected $news;

public function __construct() {
$this->news = new \Doctrine\Common\Collections\ArrayCollection;
}

}

要添加新新闻,我必须包括 UserNews 类(如果它们在单独的文件中,例如 UserModel.php 和 NewsModel.php)和写一段代码:

$news = new News()
$news->setTitle('TEST title');
$news->setAuthor($database->find('User', 1));
$database->persist($news);

我的问题是:有没有办法不包含 User 类就可以插入新闻?

最佳答案

您不需要实际加载用户。

相反,您可以使用 reference proxy :

<?PHP
$news = new News()
$news->setTitle('TEST title');
$news->setAuthor($em->getReference('User',1));
$em->persist($news);

关于php - Doctrine 2.1 - 实体插入,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/8703102/

26 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com