我有一个关于atk4 MVCgrid的问题,我的数据库表没有名为“ id”的字段,我的主键是id_material,我无法更改idfield,我的SQL包含不存在的文件ID,所以它失败。
如何使用我的真实主键更改默认ID主键字段(id)?
我的简单代码:
class Model_Material extends Model_Table
{
public $entity_code='material';
public $table_alias='p';
function defineFields(){
parent::defineFields();
$this->addField('id_material');
$this->addField('material');
}
}
谢谢
最佳答案
您需要做的就是创建一个别名:
$this->getField('id')->calculated(true);
function calculate_id(){
return 'id_material';
}
使用外键会遇到更多困难。您可能要注意4.2版本,它将具有更大的灵活性。
https://github.com/atk4/atk4/commits/4.2
https://github.com/atk4/atk4/blob/4.2/lib/Model/Field/Reference.php
关于mysql - atk4数据库表ID,我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/8277642/