drlhsfqoa350437979 2011-11-11 09:19
浏览 11
已采纳

双向一对多

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.

  • 写回答

1条回答 默认 最新

  • douhang5460 2011-11-11 10:04
    关注

    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!

    本回答被题主选为最佳回答 , 对您是否有帮助呢?
    评论

报告相同问题?

悬赏问题

  • ¥15 centos7.9 IPv6端口telnet和端口监控问题
  • ¥120 计算机网络的新校区组网设计
  • ¥20 完全没有学习过GAN,看了CSDN的一篇文章,里面有代码但是完全不知道如何操作
  • ¥15 使用ue5插件narrative时如何切换关卡也保存叙事任务记录
  • ¥20 海浪数据 南海地区海况数据,波浪数据
  • ¥20 软件测试决策法疑问求解答
  • ¥15 win11 23H2删除推荐的项目,支持注册表等
  • ¥15 matlab 用yalmip搭建模型,cplex求解,线性化处理的方法
  • ¥15 qt6.6.3 基于百度云的语音识别 不会改
  • ¥15 关于#目标检测#的问题:大概就是类似后台自动检测某下架商品的库存,在他监测到该商品上架并且可以购买的瞬间点击立即购买下单