【发布时间】:2016-07-09 19:06:01
【问题描述】:
我有一个名为 Order 的实体,它与用户实体具有 OneToMany 关系。
/**
* Class Order
*
* @ORM\Entity(repositoryClass="AppBundle\Repository\OrderRepository")
* @ORM\Table(name="orders")
*
* Defines the properties of the Order entity to represent the orders.
*/
class Order
{
/**
* @ORM\Column(type="integer")
* @ORM\Id
* @ORM\GeneratedValue(strategy="AUTO")
*/
protected $id;
/**
* @var User $user
*
* @ORM\ManyToOne(
* targetEntity="User",
* inversedBy="orders"
* )
* @ORM\JoinColumn(
* name="user_id",
* referencedColumnName="id"
* )
*/
protected $user;
// other columns ..
当我运行它时,它会在表的末尾创建一个 user_id 列。
是否可以在 ID 列之后创建此列?
我试过了:
..
*
* @ORM\ManyToOne(
* targetEntity="User",
* inversedBy="orders"
* )
* @ORM\JoinColumn(
* name="user_id",
* referencedColumnName="id"
* )
*
* @Column(
* columnDefinition="INT NOT NULL AFTER `id`"
* )
但我得到一个错误:
[Doctrine\Common\Annotations\AnnotationException]
[Semantical Error] The annotation "@Column" in property AppBundle\Entity\Order::$user was never imported. Did you maybe forget to add a "use" statement for this annotation?
【问题讨论】:
标签: mysql database orm doctrine-orm