Ruby 程序員學習 laravel 框架筆記 (6)-修改 User model

上一篇文章Ruby 程序員學習 laravel 框架筆記 (5)-簡單的用戶認證講到了laravel自己集成了登陸和註冊的功能,雖然這個功能已經很不錯了,但有時候仍是要根據本身的需求改改。php

好比,用戶名,咱們要改爲首字母大寫的,好比,用戶輸入hfpp2012,存到數據庫的時候,咱們要自動變成Hfpp2012laravel

如今咱們來實現一下。程序員

1. 修改 controller

首字母大寫仍是很簡單的,一個函數便可,就是ucfirst數據庫

咱們找到註冊相關的controller。ruby

找到app/Http/Controllers/Auth/RegisterController.php文件。app

把下面的這一段改一下:框架

protected function create(array $data)
{
    return User::create([
        'name' => $data['name'],
        'email' => $data['email'],
        'password' => bcrypt($data['password']),
    ]);
}

改爲函數

protected function create(array $data)
{
    return User::create([
        'name' => ucfirst($data['name']),
        'email' => $data['email'],
        'password' => bcrypt($data['password']),
    ]);
}

這樣就能夠了,再去註冊一個用戶,應該變成了大寫的首字母。學習

查看一下數據庫,果真。this

2. 修改 model

就像ruby那樣,這種代碼咱們通常不會放在controller中的,咱們儘可能地保持controller小,而model胖一些。

因此咱們去掉剛纔的改動,找到User這個model,便是app/User.php這個文件。

咱們加入下面的方法:

public function setNameAttribute($value)
{
    $this->attributes['name'] = ucfirst($value);
}

你會發現效果同樣的。

完結。

相關文章
相關標籤/搜索