Laravel(1) 登録の書き換え

WBOY
WBOYオリジナル
2016-06-23 13:32:351046ブラウズ

ルーティングを設定する

php<?phpRoute::controllers([  'auth' => 'Auth\AuthController',]);```这种路由配置方式对应的路径方式是 访问的方式+方法名 如在浏览器中使用get方式去访问register方法 那么这个路由会自动配置到这个类下面的getRegister方法。post也是一样##### 建立一个自己的注册页面我在AuthControlle里建立一个自己的视图```php<?php  public function getRegister(){    return view("auth.register");  }```上面已经说了路由的解析方式 只要配好路由就可以了##### 我们需要定义一个处理这个的注册处理类接下来我会把所有的代码贴出来再代码中去讲解怎么重写 同样这个文件位于AuthController下```php<?phppublic function postRegister(UserRegisterRequest $req){                       //验证通过 注册用户      $data = $req->all();      $data['register_ip'] = $req->ip();            $user =  $this->registrar->create($data);      return redirect()->intended('/');}?>

登録機能全体が非常に簡単であることがわかります。それでは、どこで登録制限を設定できるのでしょうか? 実際、フォームに入力されたすべてのデータは UserRegisterRequest ファイルで制御されます

php<?php namespace App\Http\Requests;use App\Http\Requests\Request;use Config;class UserRegisterRequest extends Request {  /**   * Determine if the user is authorized to make this request.   *   * @return bool   */  public function authorize()  {    return true;a  }  /**   * Get the validation rules that apply to the request.   *   * @return array   */  public function rules()  {             //自定义的电话号码正则表达式    $regex = Config::get('constant.phone_number_regex');    return [      //对注册表单提交的信息进行验证      "username" => ['required','min:3','max:16','unique:users'],      "phone_number" => ['required','min:3','max:16','unique:users'],      "password" => ['required','min:6','max:16','confirmed'],      "verify_code" => ['required','digits:4'],    ];   }  public function sanitize()  {    return $this->all();  }}

PHP 職人をもたらすには、laravel を使用できます。 make:request リクエスト クラスを作成します

このクラスは、リクエストされたデータをすべて制御するためのルールを定義します。ルールが満たされた場合、アクセスは続行されます。

登録を書き換えてデータ操作を追加します

登録の目的は、ユーザーテーブルに修飾されたデータを書き込むことです。要求されたデータが書き換えられるので、要求された操作を書き換えるのは当然です

登録が成功した後、それが追加されます。このコードは上記の postRegister に実装されています

php<?php$user =  $this->registrar->create($data);

このコードはサービスの下の Registrar.php にあります

php<?php  public function create(array $data)  {    $properties = [      'username' => $data['username'],      'password' => bcrypt($data['password']),      'register_time' => Carbon::now()->toDateTimeString(),      'register_ip' => $data['register_ip']    ];    return User::create($properties);    $user = new User();    $user->save();  }

この処理関数を独自のビジネス ロジックに準拠する関数に変更するだけです

Laravel one step 権限制御実装手順(2) ログイン書き換え

声明:
この記事の内容はネチズンが自主的に寄稿したものであり、著作権は原著者に帰属します。このサイトは、それに相当する法的責任を負いません。盗作または侵害の疑いのあるコンテンツを見つけた場合は、admin@php.cn までご連絡ください。