上一篇文章Ruby 程序员学习 laravel 框架笔记 (5)-简单的用户认证讲到了laravel自己集成了登陆和注册的功能,虽然这个功能已经很不错了,但有时候仍是要根据本身的需求改改。php
好比,用户名,咱们要改为首字母大写的,好比,用户输入hfpp2012
,存到数据库的时候,咱们要自动变成Hfpp2012
。laravel
如今咱们来实现一下。程序员
首字母大写仍是很简单的,一个函数便可,就是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
就像ruby那样,这种代码咱们通常不会放在controller中的,咱们尽可能地保持controller小,而model胖一些。
因此咱们去掉刚才的改动,找到User这个model,便是app/User.php
这个文件。
咱们加入下面的方法:
public function setNameAttribute($value) { $this->attributes['name'] = ucfirst($value); }
你会发现效果同样的。
完结。