我必须使用这些架构的表:
users(id, name, email)
user_details (id, user_id, physical_address, otherinfo)
我想使用杂货店crud在一个网格中显示两个表的所有内容 当我尝试在第一个表上使用set relation时如图所示:注意:我已经减少了渲染视图的部分;
$crud = new grocery_CRUD();
$crud->set_table('users');
$crud->set_relation('id', 'user_details', '{physical_address} + {otherinfo}');
id字段的值以及引用的表不会出现在网格中,因此在使用主键时似乎不起作用。
所以我决定从第二个表的内容开始,如下所示:
$crud = new grocery_CRUD();
$crud->set_table('user_details');
$crud->set_relation('user_id', 'users', '{name} + {email}');
这样可行,但问题是值出现在网格的一列中。我想知道如何将它们分成不同的列,并使它们在单独的输入字段中可编辑。
答案 0 :(得分:0)
我的方式有点可笑,
如果我真的需要将字段分开,我可以使用callback_column然后使用活动记录使用$row->user_id
返回值,并回调每条记录
就像:
名称字段为return $this->some_model->get_name($row->user_id);
和
电子邮件字段return $this->some_model->get_name($row->user_id);
但是,正如我测试了一些虚拟记录,它无法排序,(我不知道是否有人可以)