0
即時begginer和搜索文件,但無法找到這個如何做到這一點:ATK CRUD與一個:很多的關係
我有兩個表,管理員和應用程序。管理員可以有很多應用程序。
ADMIN:
class Model_Admin extends Model_Table {
public $entity_code='admin';
function init(){
parent::init();
$this->addField('name');
$this->addField('email');
$this->addField('password')->type('password');
$this->addField('active')->type('boolean')->system(true);
$this->addField('super')->type('boolean')->system(true);
$this->addField('created')->type('timestamp')->defaultValue($this->dsql()->expr('now()'))->system(true);
$this->addField('updated')->type('timestamp')->system(true);
$this->hasMany('Application','admin_id');
//$this->hasOne('Application');
$this->addHook('beforeSave',function($m){
$m['updated']=$m->dsql()->expr('now()');
});
}
}
應用:
class Model_Application extends Model_Table {
public $entity_code='application';
function init(){
parent::init();
$this->addField('name');
$this->addField('fbid');
$this->addField('fbsecret');
$this->addField('active')->type('boolean')->system(true);
$this->addField('created')->type('timestamp')->system(true);
$this->addField('updated')->type('timestamp')->system(true);
}
}
第一個問題,當我生成SQL代碼(/generate.html)它不會產生一個什麼一對多的關係。 其次,在頁面上我添加CRUD:
$this->add('CRUD')->setModel('Admin');
但沒有暗示任何一對多。我希望它在添加按鈕的形式,但也沒有什麼?
我想要的是,我可以添加管理員,並選擇最重要的應用程序屬於他?
謝謝你的幫忙!
喜,謝謝你的回答,但這隻適用於1:1解決方案。我在這裏創建了M:M的新問題:http://stackoverflow.com/questions/21045491/how-to-implement-crud-with-manymany-relationship – Peter
不,這是一對多的連接,因爲一個管理員可以擁有多種應用。對於多對多連接,您需要使用proxi表格 – Vadym