RouteCollection.php第161行中的Laravel NotFoundHttpException:

时间:2016-04-28 05:05:32

标签: php laravel

我遇到此错误时遇到此错误很困难,我的解决方案是创建新项目。我知道这个问题总是在这里问。我一行一行地跟踪了所有教程,总是错误。

注册:

 @extends('layouts.master')
 @section('content')
  <div class="col-md-6">
    <form method="POST" action="{{ route('signup') }}">
        <div class="form-group">
            <input type="text" name="username" placeholder="Username" class="form-control"></input>
        </div>
        <div class="form-group">
            <input type="password" name="password" placeholder="Password" class="form-control"></input>
        </div>
        <div class="form-group">
            <input type="submit" value="Submit" class="btn btn-primary pull-right"></input>
            <input type="hidden" name="_token" value="{{ Session::token() }}"></input>
        </div>
    </form>
</div>
@endsection

routes.php文件

 <?php

 Route::get('/', function () {
    return view('welcome');
});

Route::post('/signup', [
    'uses' => 'UserController@postSignUp',
    'as' => 'signup'
]);

UserController中

 <?php

 namespace App\Http\Controllers;
 use Illuminate\Http\Request;
 use App\Http\Requests;
 use App\User;

 class UserController extends Controller
 {
 public function postSignUp(Request $request){

    $username = $request['username'];
    $password = bcrypt($request['password']);

    $user = new User();
    $user->username = $username;
    $user->password = $password;
    $user->save();

    return redirect()->back();
  }
}

2 个答案:

答案 0 :(得分:0)

我没有看到您表单的shell_exec('android list targets'); 路线。只有在您提交表单时,您的邮寄路线才会有效。

所以,在你的routes.php中,应该有像

这样的东西
get

并且,在UserController @ getSignUp中,您只需加载表单视图。

答案 1 :(得分:0)

//您的刀片文件可以,您可以使用相同的

//您选择路线

Route::get('/signup', function () {     //route1 to view form
    return view('signUp');
});

Route::post('/signup', [               // route2 to handle form request
    'uses' => 'UserController@postSignUp',
    'as' => 'signup'
]);

要查看您的表单,必须使用route1的get方法,在提交表单后,postSignUp方法将重定向到get,即route1。

//您的控制器

public function postSignUp(Request $request){
$username = $request->username;      //to access username 
$password = bcrypt($request->password); //to access password



$user = new User();
$user->name = $username;
$user->password = $password;
$user->save();

return redirect()->back();
}

在刀片文件中,您分别使用分别用作用户名和密码的名称作为用户的用户名和密码。因此,在用户Usercontroller中,您可以直接使用$ request-> username和$ request-> password分别作为用户的用户名和密码来访问它们。