我一直在用这个 ORM 错误敲我的脑袋:Fuel\Core\FuelException [错误]:模型 Model_CustomValue 上的主键无法更改。
以下是我遇到问题的模型的相关信息:
<?php
use Orm\Model;
class Model_Purchase extends Model
{
protected static $_has_many = array(
'customvalues' => array(
'model_to' => 'Model_CustomValue',
'key_to' => 'purchase_id',
'cascade_delete' => true,
)
);
protected static $_properties = array(
'id',
'customer_id',
'payment_id',
'audit_id',
'created_at',
'updated_at',
);
<?php
use Orm\Model;
class Model_CustomValue extends Model
{
protected static $_table_name = 'customvalues';
protected static $_primary_key = array('purchase_id', 'customfield_id');
protected static $_belongs_to = array(
'purchase' => array(
'key_from' => 'purchase_id',
'model_to' => 'Model_Purchase',
'key_to' => 'id',
),
);
当尝试将带有 Model_CustomValue 对象数组的 Model_Purchase 保存为 $purchase 对象上名为“customvalues”的属性时,我得到“无法更改模型 Model_CustomValue 上的主键”。
我尝试在 Model_CustomValue 的“belongs_to”中交换 key_from/to,但无济于事。
我正在使用 Fuel 1.6(哈希:6e6d764)
如果更多信息有帮助,请告诉我,我会提供。