zf2 with doctrine2 - 我怎样才能找出错误的原因?

时间:2014-06-19 11:26:54

标签: debugging doctrine-orm zend-framework2

我现在尝试学习Doctrine2,所以我创建了一个简单的实体(实际上我是从教程中得到的):

<?php

namespace Application\Entity;
use Doctrine\ORM\Mapping as ORM;

/**
 * @ORM\Entity
 */
class Product {
    /**
     * @ORM\Id
     * @ORM\GeneratedValue(strategy="AUTO")
     * @ORM\Column(type="integer")
     */
    protected $id;

    /**
     * @ORM\Column(type="string")
     */
    protected $name;

    public function getId() {
        return $this->id;
    }

    public function getName() {
        return $this->name;
    }

    public function setName($name) {
        $this->name;
        return $this;
    }
}

我还创建了一个用于创建和保留此类产品的操作:

public function createProductAction() {
    $em = $this->getServiceLocator()->get('Doctrine\ORM\EntityManager');
    $em->getConnection()
       ->getConfiguration()
       ->setSQLLogger(new \Doctrine\DBAL\Logging\EchoSQLLogger());
    $product = new Product();
    $product->setName("Test product");

    $em->persist($product);
    $em->flush();

    echo "Created product with ID ".$product->getId();
}

当然,在测试之前,我已经运行了一个命令来创建数据库方案(并检查它是否实际创建了)。用户的Simillar代码运行顺畅,但此操作报告如下:

"START TRANSACTION" INSERT INTO Product (name) VALUES (?)

array (size=1)
  1 => null

array (size=1)
  1 => string 'string' (length=6)

"ROLLBACK" 

出了什么问题?反正以某种方式调试它? :|

0 个答案:

没有答案