Argument 1 passé doit être une instance de l'Application\Demande, l'instance d'Éclairer\Http\Requête donnée
J'ai créé une méthode dans mon modèle d'Utilisateur à télécharger une affiche (avec intervention de l'utilisateur:
/**
* Store user's poster.
*/
public static function storePoster(Request $request)
{
if($request->hasFile('posterUpload')){
$poster = $request->file('posterUpload');
$filename = time() . '.'. $poster->getClientOriginalExtension();
Image::make($poster)->resize(356,265)->save(public_path('/uploads/posters/'.$filename));
$check = Setting_user::where([
['user_id', '=' ,Auth::user()->id],
['setting_id','=', 2],
])->first();
if(!$check)
{
$setting = new Setting_user();
$setting->user_id = Auth::user()->id;
$setting->setting_id = 2;
$setting->value = $filename;
$setting->save();
return back();
}
$check->value = $filename;
$check->update();
return back();
}
}
Dans mon UserController j'ai une autre méthode qui appeler la méthode statique créé dans le modèle de l'Utilisateur:
/**
* Store user's poster.
*/
public function poster(Request $request)
{
User::storePoster($request);
}
C'est mon itinéraire:
Route::post('/user-profile/store/poster', 'UserController@poster');
Et c'est l'erreur que j'obtiens lorsque je navigue à "utilisateur/profil/store/affiche" :
Argument 1 passed to App\User::storePoster() must be an instance of App\Request, instance of Illuminate\Http\Request given, called in C:\xampp\htdocs\laravel\laravel-paper-dashboard\app\Http\Controllers\UserController.php on line 29 and defined
Bien que si je bouge toute la logique du modèle et de la mettre dans mon UserController il fonctionne très bien.
Aucune idée pourquoi?
Merci d'avance.
ajouter l'utilisation de l'App\Http\Demandes; avant de votre classe
OriginalL'auteur Marco | 2017-07-19
Vous devez vous connecter pour publier un commentaire.
Vous devez utiliser la même classe de requête dans le contrôleur et le modèle, afin de vous modèle d'utilisateur ajouter
use Illuminate\Http\Request
au sommet de la classe de dire ce qui Demande de la classe à utiliser.OriginalL'auteur Khalid Dabjan