我有以下实体:
class InvoicingSystemOrders extends BaseEntity
{
/**
* @ORM\Id
* @ORM\Column(type="integer",nullable=false)
* @ORM\GeneratedValue
*/
protected $orderId;
/**
* @ORM\Column(type="integer",nullable=false)
*/
protected $userId;
/**
* @ORM\OneToOne(targetEntity="App\Model\Entity\SystemUsers",fetch="EAGER")
* @ORM\JoinColumn(name="user_id",referencedColumnName="user_id")
*/
protected $user;
}
userId 是来自用户表的外键,问题是,如果我可以尝试插入新行,则doctrine尝试将userId保存为NULL。如果我使用anotation @OneToOne删除属性用户,则使用userId正确保存行。
使用params [null]执行'INSERT INTO invoicing_system_orders(user_id)VALUES(?)'时发生异常:SQLSTATE [23000]:完整性约束违规:1048列'user_id'不能为空
你能帮我解决这个问题吗?