我有一个问题 - 如何在Lister中获取和显示引用模型的数据?
引用表结构(模型用户):
id |登录|密码| realName |电子邮件
参考逻辑(模型发布):
$this->hasOne('User', 'author');
模板:
Author: <?realName?><?/?>
但是空洞,我做错了什么以及如何解决?
答案 0 :(得分:0)
最简单的方法可能是:
因此,在用户模型中,您必须添加:
public $title_field = 'realName';
在Lister中,$lister->setModel($user_model)
可能已经足够了。
修改强> 如果你想在你的网格中添加相关模型中的字段(比方说电子邮件),那么你可以在Post模型中使用leftJoin,就像这样(未经测试):
class Model_Post extends SQL_Model{
function init(){
parent::init();
// ... define your fields
// add left join to related TABLE (not model)
$join_users = $this->leftJoin('user', 'author_id');
// add field from joined table (not model)
$join_users->addField('email'); // it's not $this->addField(), but $join->addField() !!!
}
}
这将在您的Post模型中创建字段电子邮件,并且将填充相关表格中的值。