Krz*_*zos 3 php doctrine doctrine-orm
我有关于将实体插入数据库的问题.我有两个型号:
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;
}
}
Run Code Online (Sandbox Code Playgroud)
要添加新消息,我必须包括两个User和News类(如果它们位于单独的文件中,例如UserModel.php和NewsModel.php)并编写代码:
$news = new News()
$news->setTitle('TEST title');
$news->setAuthor($database->find('User', 1));
$database->persist($news);
Run Code Online (Sandbox Code Playgroud)
我的问题是:有没有办法插入新闻而不包括User课程?
您无需实际加载用户.
相反,您可以使用引用代理:
<?PHP
$news = new News()
$news->setTitle('TEST title');
$news->setAuthor($em->getReference('User',1));
$em->persist($news);
Run Code Online (Sandbox Code Playgroud)