[英]Laravel 4.2 NotFoundHttpException
我的路線:
Route::get('/', array('as' => 'home', 'uses'=> 'QuestionsController@index') );
Route::get('register', array('as' => 'register', 'uses'=> 'UsersController@getnew'));
Route::post('register', array('uses'=> 'UsersController@create'));
控制器:
public function create()
{
$validation = User::validate(Input::all());
if ($validation->passes()) {
User::create([
'username' => Input::get('username'),
'password' => Hash::make(Input::get('password'))
]);
//dd('post created');
return Redirect::to('home')->with('message', 'Thanks for registering');
} else {
return Redirect::to('register')->withErrors($validation)->withInput();
}
}
new.blade.php
:
@extends('layouts.default')
@section('content')
<h1>Register</h1>
@if($errors->has())
<p>The following errors have occurred:</p>
<ul id="form-errors">
{{ $errors->first('username', '<li>:message</li>') }}
{{ $errors->first('password', '<li>:message</li>') }}
{{ $errors->first('password_confirmation', '<li>:message</li>') }}
</ul>
@endif
{{ Form::open(array('url'=>'register', 'method'=>'POST')) }}
{{ Form::token() }}
<p>
{{ Form::label('username', 'Username') }}<br />
{{ Form::text('username', Input::old('username')) }}
</p>
<p>
{{ Form::label('password', 'Password') }}<br />
{{ Form::password('password') }}
</p>
<p>
{{ Form::label('password_confirmation', 'Confirm Password') }}<br />
{{ Form::password('password_confirmation') }}
</p>
<p>{{ Form::submit('Register') }}</p>
{{ Form::close() }}
@stop
當我提交表單時,然后檢查dd('postcreated')
數據是否到達目標表,但是當重定向到本地路由時,出現以下錯誤。
[2015-03-22 08:51:33] production.ERROR: exception 'Symfony\Component\HttpKernel\Exception\NotFoundHttpException' in E:\Web\xampp\htdocs\makeitsnappy\bootstrap\compiled.php:5747
Stack trace:
#0 E:\Web\xampp\htdocs\makeitsnappy\bootstrap\compiled.php(5069): Illuminate\Routing\RouteCollection->match(Object(Illuminate\Http\Request))
#1 E:\Web\xampp\htdocs\makeitsnappy\bootstrap\compiled.php(5057): Illuminate\Routing\Router->findRoute(Object(Illuminate\Http\Request))
#2 E:\Web\xampp\htdocs\makeitsnappy\bootstrap\compiled.php(5049): Illuminate\Routing\Router->dispatchToRoute(Object(Illuminate\Http\Request))
#3 E:\Web\xampp\htdocs\makeitsnappy\bootstrap\compiled.php(715): Illuminate\Routing\Router->dispatch(Object(Illuminate\Http\Request))
#4 E:\Web\xampp\htdocs\makeitsnappy\bootstrap\compiled.php(696): Illuminate\Foundation\Application->dispatch(Object(Illuminate\Http\Request))
#5 E:\Web\xampp\htdocs\makeitsnappy\bootstrap\compiled.php(7821): Illuminate\Foundation\Application->handle(Object(Illuminate\Http\Request), 1, true)
#6 E:\Web\xampp\htdocs\makeitsnappy\bootstrap\compiled.php(8428): Illuminate\Session\Middleware->handle(Object(Illuminate\Http\Request), 1, true)
#7 E:\Web\xampp\htdocs\makeitsnappy\bootstrap\compiled.php(8375): Illuminate\Cookie\Queue->handle(Object(Illuminate\Http\Request), 1, true)
#8 E:\Web\xampp\htdocs\makeitsnappy\bootstrap\compiled.php(11040): Illuminate\Cookie\Guard->handle(Object(Illuminate\Http\Request), 1, true)
#9 E:\Web\xampp\htdocs\makeitsnappy\bootstrap\compiled.php(657): Stack\StackedHttpKernel->handle(Object(Illuminate\Http\Request))
#10 E:\Web\xampp\htdocs\makeitsnappy\public\index.php(49): Illuminate\Foundation\Application->run()
#11 {main} [] []
當我檢查注冊路由時,一切正常。 我的家庭路線有什么問題?
您應該使用Redirect::route()
(重定向到命名路由),而不要使用希望重定向到URL的Redirect::to()
。 測試環境中不存在home
,導致未找到404異常。
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.