実際に私はPHPとLaravel5.3の新機能です。この問題は、フォームのリクエストを設定したいときに行います。シンプルなブログページ)Route.phpラインでクラスApp Http Controllers Requests ArticleRequestは存在しませんLaravel5.3
ReflectionException 339:クラスのApp \ HTTPは、\コントローラ\要望\
そして、これは私のコントローラのコードです(ファイル名が存在しませんArticleRequest:)ArticlesControllers.phpを:
<?php
namespace App\Http\Controllers;
//namespace App\Http\Controllers;
use App\Http\Requests\ArticleRequest;
use App\Article;
use Carbon\Carbon;
use Illuminate\Http\Request;
class ArticlesControllers extends Controller
{
//
public function index(){
$articles = Article::latest()->get();
//return 'articles';
return view('articles.index')->with('articles',$articles);
}
public function show($id){
$article = Article::find($id);
// if(is_null($article)){
// abort(404);
// }
//dd($artilce);
return view('articles.show',compact('article'));
}
public function create(){
return view('articles.create');
}
public function store(Requests\ArticleRequest $request){
//dd($request->all());
//接受post过来的数据
//存入数据库
//重定向
$input=$request->all();
//$input['published_at']=Carbon::now();
Article::create($input);
return redirect('/articles');
}
}
そして、r equestファイルのコード:(ファイル名:パス要求でArticleRequest.phpは)
<?php
namespace App\Http\Requests;
use Illuminate\Foundation\Http\FormRequest;
class ArticleRequest extends FormRequest
{
/**
* Determine if the user is authorized to make this request.
*
* @return bool
*/
public function authorize()
{
return true;
}
/**
* Get the validation rules that apply to the request.
*
* @return array
*/
public function rules()
{
return [
'title'=>'required|min:3',
'content'=>'required',
'published'=>'require'
];
}
}
マイルート/ Web.phpは次のとおりです。私はこの厄介な問題を取り除くことができますどのように
<?php
/*
|--------------------------------------------------------------------------
| Web Routes
|--------------------------------------------------------------------------
|
| Here is where you can register web routes for your application. These
| routes are loaded by the RouteServiceProvider within a group which
| contains the "web" middleware group. Now create something great!
|
*/
//Route::get('/','[email protected]');
Route::get('/', function() {
return view('welcome');
});
Route::get('/articles','[email protected]');
Route::get('/articles/create','[email protected]');
Route::get('/articles/{id}','[email protected]');
Route::post('/articles/store','[email protected]');
、私はしました.... StackOverflowの上で検索されますが、ほとんどすべての答えは、それを解決しないことがあり、これに
を使用し、トップ
use App\Http\Requests\ArticleRequest
引数 として完全なクラス名を使用する必要はありませんで、クラスをインポートプロジェクトの認証システムを作成していますか? –