我已将此库实现为全文搜索。
https://github.com/TomLingham/Laravel-Searchy
有人知道如何搜索关系表。
例如:
应用程序模型将状态存储为整数,并引用名称的状态模型。
application_status = 1
在状态模型中:
id:Name
1:Approve
2:Reject
示例代码:
Searchy::applications('status')->query('Approve')->get();
答案 0 :(得分:0)
您可以通过我所知的两种方式查询模型关系。
// Use sub query with count
$applications = Application::whereHas('status', function ($query) {
return $query->where('name', 'Approve');
})
->get();
// Use join (if one-to-many or many-to-many, remember group by)
$applications = Application::select('applications.*')
->join('statuses', 'application.status_id', '=', 'status.id')
->where('statuses.name', 'Approve')
->get();
对您的软件包进行了非常高级的查看,我无法立即看到您将如何使用示例语法集成(如下)。
Searchy::applications('status')->query('Approve')->get();
从您的软件包的文档中,此语法表明status
是Application
上的字段,而它实际上是一种关系。我认为您需要做出某种区分才能在内部决定如何查询该值。