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