双向一对多(Bidirectional One

系统教程 行业动态 更新时间:2024-06-14 16:54:47
双向一对多(Bidirectional One-To-Many)

我试图在Doctrine 2.1中创建一个双向的一对多关系。 我将我的代码与手册和其他示例进行了比较,但仍然看不出我做错了什么。 我只得到一个空白的屏幕,所以很难调试。 (log_threshold = 4但日志中没有错误)。

我有这两个表:

用户

id name

大车

id items

这是我的两个模型(简称):

/** * @Entity * @Table(name="user") */ class User { /** * @Id * @Column(type="integer", nullable=false) * @GeneratedValue(strategy="AUTO") */ protected $id; /** * @OneToMany(targetEntity="Cart", mappedBy="user_id") */ private $carts; } /** * @Entity * @Table(name="cart") */ class Cart { /** * @Id * @Column(type="integer", nullable=false) * @GeneratedValue(strategy="AUTO") */ protected $id; /** * @ManyToOne(targetEntity="User", inversedBy="carts") */ private $user; }

然后我尝试链接它们

$user = $this->em->find('models\User', 8); $cart = new models\Cart(); $user->getCarts()->add($cart); $cart->setOwner($user); $this->em->persist($cart); $this->em->flush();

在这里我得到一个空白的屏幕。 没有一对多,它工作正常。

I am trying to create a bidirectional One-To-Many relation in Doctrine 2.1. I Compared my code to the manual and to other examples but still can't see what I am doing wrong. I only get a blank screen so it's hard to debug. (log_threshold = 4 but no error in the log).

I have those two tables:

user

id name

cart

id items

And here are my two models (in short):

/** * @Entity * @Table(name="user") */ class User { /** * @Id * @Column(type="integer", nullable=false) * @GeneratedValue(strategy="AUTO") */ protected $id; /** * @OneToMany(targetEntity="Cart", mappedBy="user_id") */ private $carts; } /** * @Entity * @Table(name="cart") */ class Cart { /** * @Id * @Column(type="integer", nullable=false) * @GeneratedValue(strategy="AUTO") */ protected $id; /** * @ManyToOne(targetEntity="User", inversedBy="carts") */ private $user; }

Then I try to link them

$user = $this->em->find('models\User', 8); $cart = new models\Cart(); $user->getCarts()->add($cart); $cart->setOwner($user); $this->em->persist($cart); $this->em->flush();

Here I get a blank screen. Without One-To-Many it works fine.

最满意答案

好吧,我自己想通了。 诀窍是显示错误消息:

error_reporting(E_ALL); ini_set('display_errors', '1');

我需要用值填充一些字段。 不允许为空。 DOH!

Ok, I figured it out myself. The trick was to show error messages:

error_reporting(E_ALL); ini_set('display_errors', '1');

I needed to fill some fields with values. There were not allowed to be null. DOH!

更多推荐

本文发布于:2023-04-08 12:36:00,感谢您对本站的认可!
本文链接:https://www.elefans.com/category/dzcp/0b0812d01207b3abb73cbf7b67b0a82e.html
版权声明:本站内容均来自互联网,仅供演示用,请勿用于商业和其他非法用途。如果侵犯了您的权益请与我们联系,我们将在24小时内删除。
本文标签:双向   Bidirectional

发布评论

评论列表 (有 0 条评论)
草根站长

>www.elefans.com

编程频道|电子爱好者 - 技术资讯及电子产品介绍!