是否可以将一个变量从Eloquent传递给Controller? 我在这里有我的Eloquent代码,我得到了我的过滤查询的结果,我想使用相同的变量到我的控制器,以便我可以使用它我的导出到excel。 这是我的雄辩模型的代码:
$result = $query
->orderBy('id', 'desc')
->paginate($perPage);
if ($search) {
$result->appends(['search' => $search]);
}
if ($emp_status) {
$result->appends(['emp_status' => $emp_status]);
}
if ($company) {
$result->appends(['company' => $company]);
}
if ($age) {
$result->appends(['age' => $age]);
}
if ($tenure) {
$result->appends(['tenure' => $tenure]);
}
if ($benefit) {
$result->appends(['benefit' => $benefit]);
}
if ($level) {
$result->appends(['level' => $level]);
}
if ($gender) {
$result->appends(['gender' => $gender]);
}
if ($civil_status) {
$result->appends(['civil_status' => $civil_status]);
}
if ($birthmonth) {
$result->appends(['birthmonth' => $birthmonth]);
}
return $result;
我怎样才能获得" $ result"并在UsersController中使用它?
答案 0 :(得分:1)
听起来你需要在模型中使用像query scope这样的东西
在你的模型中是这样的:
public function scopeWhatever($query)
{
return $query->
...
your conditions
...
}
然后在您的控制器中使用:
YourModel::whatever()->get();
答案 1 :(得分:1)
我建议您将该功能添加到控制器,并在那里调用它。但如果出于某种原因,你需要在Eloquent课程中,我可以建议这两个中的一个:
myInstanceOfTheModel->myFunction();
这适用于该模型的任何实例。
trait QueryFunction(){
theQuery(){
//your function comes here
}
}
class SomeController extends Controller{
use QueryFunction;
}
class YourModel extends Elloquent{
use QueryFunction;
}
`
{{1}}
`
答案 2 :(得分:0)
试试这个: -
Model::query()->where($yourConditions)->get();