我有一些用户想要通过自定义属性(访问者)进行过滤。
据我所知,我可以做一件事情:
$filtered = Users::someScope()
->anotherScope()
->whereHas(function() { 'whatever' })
->get()
->where('custom_attribute', 5);
我可以做的另一件事是在->get()
之后单独过滤集合:
$filtered = $users->filter(function($value, $key){
return $value['custom_attribute'] == 5;
});
然后将变量发送到Vuetify的下拉列表中进行迭代。
两者都产生相同的结果。我认为它们会更改变量的类型。
结果:
如果我返回$filtered
,则在迭代时会显示[Object object]。
如果我返回$filtered->all()
,则会抛出一个Htmlspecialchars expects string - array given
如果我在过滤之前/不进行过滤的情况下返回-一切正常。
答案 0 :(得分:0)
您可以尝试使用+-----------+----------+
| ip | quantity |
+-----------+----------+
| 172.0.0.1 | 2 |
+-----------+----------+
| 172.0.0.2 | 1 |
+-----------+----------+
| 172.0.0.3 | 1 |
+-----------+----------+
| 172.0.0.4 | 1 |
+-----------+----------+
| 172.0.0.5 | 1 |
+-----------+----------+
。它将恢复您的密钥。
values()
如果您需要使用json发送,可以将其设为$filtered = $users->filter(function($value, $key){
return $value['custom_attribute'] == 5;
})->values();