:::

6-2 讓新增的欄位可以寫入資料庫

  1. 有了新欄位,我們得讓使用者註冊時,可以把新欄位也寫入資料庫。
  2. 開啟\專案\app\Http\Controllers\Auth\RegisterController.php,我們來修改其控制器
  3. 先修改資料檢查的部份(完整規則請參考:https://learnku.com/docs/laravel/5.8/validation/3899#available-validation-rules
    protected function validator(array $data)
    {
        return Validator::make($data, [
            'name' => ['required', 'string', 'max:255'],
            'email' => ['required', 'string', 'email', 'max:255', 'unique:users'],
            'password' => ['required', 'string', 'min:8', 'confirmed'],
            'address' => ['required', 'string', 'max:255'],
            'tel' => ['required', 'string', 'max:255'],
        ]);
    }
  4. 再修改寫入資料的部份
    protected function create(array $data)
    {
        return User::create([
            'name' => $data['name'],
            'email' => $data['email'],
            'password' => Hash::make($data['password']),
            'address' => $data['address'],
            'tel' => $data['tel'],
        ]);
    }
  5. 然後修改User模型,編輯\專案\app\User.php,使之可以批次賦值(一定要做,否則會出錯),關於批次賦值請參考:https://learnku.com/docs/laravel/5.8/eloquent/3931#mass-assignment
    protected $fillable = [
        'name', 'email', 'password', 'address', 'tel',
    ];
    
  6. 最後就可以重新註冊一個使用者囉!註冊完應該就可以看到地址、電話已經寫入了。

到GitHub觀看此單元程式異動

 


:::

書籍目錄

展開 | 闔起

快速登入


http%3A%2F%2Fcampus-xoops.tn.edu.tw%2Fmodules%2Ftad_book3%2Fpage.php%3Ftbdsn%3D1401%26tbsn%3D43

計數器

今天: 991991991
昨天: 4125412541254125
總計: 8043769804376980437698043769804376980437698043769