我真的需要在两个表之间实现1-1关系。这些是我的表格:
Users: id, username, email, password
Userinfo: id, Isers_id, firstname ,lastname, mobile, address, ...
users表是只读的...这是建议的解决方案:
->set_table('Userinfo')
->columns('users_id','users_id');
->set_relation('users_id','Users','username')
->set_relation('users_id','Users','email')
但问题是我无法设置两个用户_id'列!!! 你有什么建议?
由于
答案 0 :(得分:1)
正如您的示例所示,您在两个表之间只有一个关系,但希望从中恢复两个字段。
恕我直言,最好的方法是这样的:
->set_table('Userinfo')
->columns('users_id');
->set_relation('users_id','Users','{username} - [{email}]')
请参阅http://www.grocerycrud.com/documentation/options_functions/set_relation中的文档和更多示例。
答案 1 :(得分:0)
Grocery CRUD非常棒,但默认情况下它不会处理1-1关系。
查看论坛中的帖子,了解可能的解决方案 https://www.grocerycrud.com/forums/topic/3535-implementing-1-1-relation/
具体做法是:
之前我遇到过这个问题,我使用视图解决了它,并替换了原始表控制器方法的添加,编辑和读取链接。当使用视图而不是表时,需要添加
$crud->set_primary_key("your_view_primary_key_of_table")