用户注册

resource方法定义用户资源路由

Route::resource('users','UsersController');

resource方法遵从RESTful框架为用户资源生成路由。该方法接收两个参数,第一个参数为资源名称,第二个参数为控制器名称。

HTTP请求URL动作作用
GET/usersUserscontroller@index显示所有用户列表的页面
GET/users/{user}UsersController@show显示用户个人信息的页面
GET/users/createUsersController@create创建用户的页面
POST/usersUsersController@store创建用户
GET/users/{user}/editUsersController@edit编辑用户个人资料的页面
PATCH/users/{user}UsersController@update更新用户
DELETE/users/{user}UserController@destroy删除用户

Laravel会自动解析定义在控制器方法中的Eloquent模型类型生命。在上面代码中,由于show()方法传参时声明了类型Eloquent模型User,对应的变量名$user会陪陪路由片段中的{user},这样Lrarvel会自动注入与请求RUI中传入的ID对应的用户模型实例。此功能称为隐性路由模型绑定
1. 路由声明时必须使用Eloquent模型的单数小写格式来作为路由片段参数,User对应{user}:

Route::get('/users/{user}','UsersController@show')->name('users.show');
  1. 控制器方法传参中必须包含对应的Eloquent模型类型声明,并且是有序的:
public function show(User $user)
{
    return view('users.show',compact('user'));
}

Gravatar 头像和侧边栏

Gravatar 为 “全球通用头像”,当你在 Gravatar 的服务器上放置了自己的头像后,可通过将自己的 Gravatar 登录邮箱进行 MD5 转码,并与 Gravatar 的 URL 进行拼接来获取到自己的 Gravatar 头像。
1. 在用户模型中定义一个gravatar方法,用来生成用户的头像
app/Models/User.php

public function gravatar($size = '100')
{
    $hash = md5(strtolower(triim($this->attributes['email'])));
    return "Http://www.gravatar.com/avtar/$hash?s=$size";
}

该方法主要做了以下几个操作:
1. 为gravatar方法传递的参数size指定了默认值100;
2. 通过$this->attributes['email']获取到用户的邮箱;
3. 使用trim方法将邮箱转换为小写
4. 用strtolower方法将邮箱转换为小写
5. 将小写的邮箱使用md5方法进行转码;
6. 将转码后的邮箱与连接、尺寸拼接成完整的URL并返回

  1. 在视图中通过以下方式进行调用
    • 使用默认尺寸来获取头像
$user->gravatar();
  • gravatar指定尺寸大小来获取头像
$user->gravatar('140');
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值