假设我有一个带有这样的db记录的模型:
row1: id: 1 users:["1","2","3"]
row2: id: 2 users:["3","4","5"]
用户是从json_encode(array($user_id))
格式化的数据。现在我想在user_id
中users
检索模型。因此,如果我的user_id
为2,我只会检索第1行,但如果我的user_id
为3,我将同时检索row1
和row2
。
我试过像Model::whereIn('users', $user_id)->get();
这样的东西,它不起作用,还有其他方法可以达到这种雄辩的方式吗?
答案 0 :(得分:2)
希望您在会话中存储您的用户ID,因此your_id指的是分配给您自己的ID。
Model::where('id','!=',your_id)->get();
除了id = your_id
之外,这将返回所有行答案 1 :(得分:0)
我不认为这是一种非常有说服力的方式。但是既然你使用了json_encode,我们就可以假设所有数据的格式都是一样的,并做了类似的事情:
Model::where('users', 'like', '%"'.$user_id.'"%')->get();
这应该有效。你的情况通常最好通过数据透视表来处理,但当然你不会像其他人那样 使用它们。