идентификатор таблицы базы данных atk4 - PullRequest
1 голос
/ 26 ноября 2011

У меня вопрос по поводу atk4 MVCgrid, в моей таблице базы данных нет поля с именем "id", мой первичный ключ - id_material, я не могу изменить поле id, мой SQL содержит идентификатор файла, который не 'существовать, чтобы он потерпел неудачу.Как я могу изменить поле первичного ключа 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');
    }
}

Thank's

1 Ответ

0 голосов
/ 26 ноября 2011

Все, что вам нужно сделать, это создать псевдоним:

$this->getField('id')->calculated(true);

function calculate_id(){
    return 'id_material';
}

У вас будет больше трудностей с внешними ключами.Возможно, вы захотите следить за выпуском 4.2, который будет более гибким.

...