2017-10-05 17 views
0

私はlaravelへの初心者です、私はここにいくつかの疑問を尋ねています。 Laravel 5.1によってデフォルトで提供されているAuth Classを使用して基本的なログインと登録を行うと、404が見つかりませんでした。私はlaravel 5.1公​​式ドキュメント以下のいLaravel 5.1基本認証

resources/views/auth/register.blade.php 
resources/views/auth/login.blade.php 

、これを取得する:

は、ここに私のディレクトリ構造です。 登録フォームの送信ボタンを押すと404が見つかりませんでした。

app/Http/Controllers/Auth/AuthController.php 
app/Http/Controllers/Auth/PasswordController.php 

私の基本的な路線:

// Authentication routes... 
Route::get('auth/login', 'Auth\[email protected]'); 
Route::post('auth/login', 'Auth\[email protected]'); 
Route::get('auth/logout', 'Auth\[email protected]'); 

// Registration routes... 
Route::get('auth/register', 'Auth\[email protected]'); 
Route::post('auth/register', 'Auth\[email protected]'); 


Route::controllers([ 
    'password' => 'Auth\PasswordController', 
]); 

まだそれは私に404が見つからないというエラーがスローされますように私は私の認証クラスを持っている

register.blade.php

<!-- resources/views/auth/register.blade.php --> 

<form method="POST" action="/auth/register"> 
    {!! csrf_field() !!} 

    <div> 
     Name 
     <input type="text" name="name" value="{{ old('name') }}"> 
    </div> 

    <div> 
     Email 
     <input type="email" name="email" value="{{ old('email') }}"> 
    </div> 

    <div> 
     Password 
     <input type="password" name="password"> 
    </div> 

    <div> 
     Confirm Password 
     <input type="password" name="password_confirmation"> 
    </div> 

    <div> 
     <button type="submit">Register</button> 
    </div> 
</form> 

。解決方法私は何が欠けていますか? また、ルートには[email protected]が表示されます。手動でgetRegisterの機能を作成する必要がありますか。見つけられませんでした。 私はまた、私AuthController.php

<?php 

namespace App\Http\Controllers\Auth; 

use App\User; 
use Validator; 
use App\Http\Requests; 
use Illuminate\Http\Request; 
use App\Http\Controllers\Controller; 
use Illuminate\Foundation\Auth\ThrottlesLogins; 
use Illuminate\Foundation\Auth\AuthenticatesAndRegistersUsers; 

class AuthController extends Controller 
{ 
    /* 
    |-------------------------------------------------------------------------- 
    | Registration & Login Controller 
    |-------------------------------------------------------------------------- 
    | 
    | This controller handles the registration of new users, as well as the 
    | authentication of existing users. By default, this controller uses 
    | a simple trait to add these behaviors. Why don't you explore it? 
    | 
    */ 

    use AuthenticatesAndRegistersUsers, ThrottlesLogins; 
    protected $redirectPath = '/dashboard'; 
    protected $loginPath = '/login'; 
    /** 
    * Create a new authentication controller instance. 
    * 
    * @return void 
    */ 
    public function __construct() 
    { 
     $this->middleware('guest', ['except' => 'getLogout']); 
    } 

    /** 
    * Get a validator for an incoming registration request. 
    * 
    * @param array $data 
    * @return \Illuminate\Contracts\Validation\Validator 
    */ 
    protected function validator(array $data) 
    { 
     return Validator::make($data, [ 
      'name' => 'required|max:255', 
      'email' => 'required|email|max:255|unique:users', 
      'password' => 'required|confirmed|min:6', 
     ]); 
    } 

    /** 
    * Create a new user instance after a valid registration. 
    * 
    * @param array $data 
    * @return User 
    */ 
    protected function create(array $data) 
    { 
     return User::create([ 
      'name' => $data['name'], 
      'email' => $data['email'], 
      'password' => bcrypt($data['password']), 
     ]); 
    } 
} 
+0

?あなたがフォームを提出すれば? –

答えて

1

のように、私はわからないが、私は、問題がフォームにごaction属性から来ていると思い見え

をlaravelに新しいです。 laravelのフォームアクションでプレーンURLを使用しないでください。
あなたはこの方法でも、自分のフォームを作成することができ

<form method="POST" action="{{ url('/auth/login') }}"> 


を使用してみてください:(あなたは、あなたのcomposer.jsonにlaravelフォームについてグーグルで検索し、依存関係を追加する必要があります)

{!! Form::open(array('url' => 'http://other.domain.com')) !!} 
    <input type="text" name="test" value="something" /> 
    <button type="submit">Submit</button> 
{!! Form::close() !!} 
エラーが正確に来たら
+0

好き私がそうするなら、それはdbに挿入をしないで同じページにリダイレクトします –