我想知道在Laravel 4.2中使用HasMany关系时是否可以设置运算符 .
我正在使用用户表和电子邮件日志表 . 日志表具有以序列化格式存储的用户ID(因为日志中可能存在多个用户ID) .
用户表
+---------+
| user_ID |
+---------+
| 1 |
| 2 |
+---------+
emailLog表
+----+--------------------+
| ID | user_ID |
+----+--------------------+
| 1 | a:1:{i:0;s:1:"2";} |
| 2 | a:1:{i:0;s:1:"1";} |
+----+--------------------+
我是否可以使用hasMany关系与'Like'运算符而不是equals运算符来返回正确的电子邮件日志ID?声明是否会写成如下所示?
return $this->hasMany('emailLog', 'user_ID', '%user_ID%', 'LIKE');
1 回答
使用where子句返回连接表的正确方法是:
return $ this-> hasMany('emailLog','user_id') - > where('user_id','LIKE','%user_id%');