Warning: file_get_contents(/data/phpspider/zhask/data//catemap/1/php/272.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Php 如何获取此特定请求的实例? 我收到的错误:_Php_Laravel - Fatal编程技术网

Php 如何获取此特定请求的实例? 我收到的错误:

Php 如何获取此特定请求的实例? 我收到的错误:,php,laravel,Php,Laravel,传递给App\Services\Credit\CreditLoadUserService::index()的参数1必须是给定的Lightlight\Http\Request实例、Lightlight\Database\Eloquent\Collection实例,在第30行的C:\wamp64\www\dev\get served admin\App\Http\Controllers\CreditLoadUserController.php中调用 控制器: 服务类别: 公共功能索引(请求$Requ

传递给App\Services\Credit\CreditLoadUserService::index()的参数1必须是给定的Lightlight\Http\Request实例、Lightlight\Database\Eloquent\Collection实例,在第30行的C:\wamp64\www\dev\get served admin\App\Http\Controllers\CreditLoadUserController.php中调用

控制器: 服务类别:
公共功能索引(请求$Request)
{
return CreditLoadUser::where('user\u id',$request->get('user\u id'))
->其中('is_loaded','',1)
->leftJoin('credit\u load'、'credit\u load.id'、'='、'credit\u load\u id')
->orderBy('credit\u load.valid\u at')
->get();
}

您必须将请求传递给您未传递的服务索引方法,更好的方法是使用请求帮助器方法查看下面的代码

服务类别:

public function index()
{
    return CreditLoadUser::where('user_id',request()->get('user_id'))
        ->where('is_loaded','<>',1)
        ->leftJoin('credit_load','credit_load.id','=','credit_load_id')
        ->orderBy('credit_load.valid_at')
        ->get();
}
public function index($userId)
{
    return CreditLoadUser::where('user_id', $userId)
        ->where('is_loaded','<>',1)
        ->leftJoin('credit_load','credit_load.id','=','credit_load_id')
        ->orderBy('credit_load.valid_at')
        ->get();
}
公共功能索引()
{
return CreditLoadUser::where('user\u id',request()->get('user\u id'))
->其中('is_loaded','',1)
->leftJoin('credit\u load'、'credit\u load.id'、'='、'credit\u load\u id')
->orderBy('credit\u load.valid\u at')
->get();
}

请求对象将仅自动注入控制器中的操作方法

另一点需要注意的是,您应该避免在服务层中编写支持HTTP的代码。考虑你想在ARTAN命令或工作中使用服务层的情况,在CLI上下文中没有任何请求。所以你应该这样写:

控制器:

public function index(Request $request)
{
    view()->share('page_sub', 'List');
    $credit = CreditLoadUser::all();
    $data = $this->user_load_service->index($request->get('user_id'));
    return view('pages.user-loads.index')->with('credit', $data);
}
服务类别:

public function index()
{
    return CreditLoadUser::where('user_id',request()->get('user_id'))
        ->where('is_loaded','<>',1)
        ->leftJoin('credit_load','credit_load.id','=','credit_load_id')
        ->orderBy('credit_load.valid_at')
        ->get();
}
public function index($userId)
{
    return CreditLoadUser::where('user_id', $userId)
        ->where('is_loaded','<>',1)
        ->leftJoin('credit_load','credit_load.id','=','credit_load_id')
        ->orderBy('credit_load.valid_at')
        ->get();
}
公共函数索引($userId)
{
返回CreditLoadUser::where('user_id',$userId)
->其中('is_loaded','',1)
->leftJoin('credit\u load'、'credit\u load.id'、'='、'credit\u load\u id')
->orderBy('credit\u load.valid\u at')
->get();
}

我尝试过,但没有得到返回值。我正在尝试将手机号码数据放入数据表。我没有得到返回值。我试图获取一个用户的手机号码,并将其放在视图中的数据表中。在我的控制器中,我可以将路由上的模型绑定为$request变量/值的键吗?如果在路由路径中有模型的
id
作为路由变量,则可以在操作中插入模型实例。例如:
Route::get('api/users/{user}',函数(App\user$user){return$user->email;})。但我不确定
id
是否在请求正文或查询字符串中。我正在为所有控制器使用资源路由。我相信这些行动都是由那些有着合适id的人设定的。不过,我已经尝试绑定模型实例。我犯了同样的错误,我被卡住了。我尽力了。在某个地方似乎有问题——我不知道。在您在问题中提供的示例代码中,您没有将模型绑定到操作的参数中。如果您尝试了不同的代码,请提供您最新的代码。没关系,我终于解决了。谢谢你的帮助。祝您今天过得愉快!