gpt4 book ai didi

php - 拉拉维尔。在where中使用表名

转载 作者:行者123 更新时间:2023-11-29 17:48:24 24 4
gpt4 key购买 nike

我有一个 Controller ,其中有一个字符串

$models = Model::with('table1', 'table2', 'table3', 'table4', 'table5')
->where('name', 'hello')->get();

问题是字段 name 包含在所有表中。如何指定所需的内容?我试过这个:

->where('table3.name', 'hello')->get();

但我收到错误 - 未找到字段

最佳答案

with方法与Model中创建的相对方法相关,它不是表名。您必须使用表名称代替table_name_for_table3.name。但你可以使用 whereHas 方法

$search_string = "hello";
$models = Model::with('table1', 'table2', 'table3', 'table4', 'table5')
->whereHas('table3',function($t)use($search_string){
$t->where('name',$search_string);
})
->where('name', 'hello')->get();

From Doc

These methods allow you to add customized constraints to a relationship constraint, such as checking the content of a comment:

关于php - 拉拉维尔。在where中使用表名,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/49610279/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com