我有3个模型:客户端,任务和任务状态(用于为每个客户端匹配任务)。
Model_Task在FuelPHP中创建一对多关系
protected static $_properties = array(
'id',
'name',
'created_at',
'updated_at',
);
Model_Client
protected static $_properties = array(
'id',
'name',
'created_at',
'updated_at',
);
Model_Taskstatus
protected static $_properties = array(
'id',
'client',
'task',
'created_at',
'updated_at',
);
我已经加入以下内容Model_Task
protected static $_has_many = array(
'taskstatuses' => array(
'key_from' => 'id',
'model_to' => 'Model_Taskstatus',
'key_to' => 'task',
'cascade_save' => true,
'cascade_delete' => false,
)
);
Model_客户
protected static $_has_many = array(
'taskstatuses' => array(
'key_from' => 'id',
'model_to' => 'Model_Taskstatus',
'key_to' => 'client',
'cascade_save' => true,
'cascade_delete' => false,
)
);
Model_Taskstatus
protected static $_belongs_to = array(
'client' => array(
'key_from' => 'client',
'model_to' => 'Model_Client',
'key_to' => 'id',
'cascade_save' => true,
'cascade_delete' => false,
),
'task' => array(
'key_from' => 'task',
'model_to' => 'Model_Task',
'key_to' => 'id',
'cascade_save' => true,
'cascade_delete' => false,
)
);
我想taskstatus连接客户端领域的客户端模型和任务领域的任务模式,如果用户插入一个任务与不是在客户端或任务值模型(通过ID),应该会出现错误。但它不起作用(我仍然可以向客户端添加客户端ID和任务ID在客户端和任务表中不存在的值的值
什么不行? “不起作用”不是错误信息!描述你在做什么以及你想要发生什么。 – markus
我希望taskstatus中的客户端和任务字段必须链接到客户端和任务模型中的id字段。我刚刚添加了2个客户端和2个任务。例如,如果我插入值为client = 40且task = 13的taskstatus,则会发生错误,告诉我我无法做到这一点。但实际上我仍然可以插入客户端和任务值> 2的taskstatus,这是我不期望的。 –