Laravel笔记

1.注意路由必须指定name才能使用这个.方便修改

<form method="POST" action="{{ route('login') }}">

2.在项目目录下查看laravel的所有路由

$ php artisan route:list

3.表单验证

public function store(Request $request)
{
    $this->validate($request, [
               'email' => 'required|email|max:255',
               'password' => 'required'
    ]);
}

required(不能为空)   email(email格式)   max(最大长度)


4.有关request

$request->all();                 //获取所有请求信息
$request->except("name");        //除了name
$request->input("name");         //获取name单个
$requett->name;                  //同上
$request->only("name","addr");   //只获取name和addr
insertGetId                      //插入并获得刚刚插入的id

5.用户身份进行认证的具体代码实现如下

public function store(Request $request)
    {
       $this->validate($request, [
           'email' => 'required|email|max:255',
           'password' => 'required'
       ]);

       $credentials = [
           'email'    => $request->email,
           'password' => $request->password,
       ];       

       if (Auth::attempt($credentials)) {
           // 登录成功后的相关操作
           session()->flash('success', '欢迎回来!');
           return redirect()->route('users.show',[Auth::user()]);
       } else {
           // 登录失败后的相关操作
           session()->flash('danger', '很抱歉,您的邮箱和密码不匹配');
           return redirect()->back();
       }

       return;
    }

我们在 store 方法内使用了 Laravel 提供的 Auth::user() 方法来获取当前登录用户的信息,并将数据传送给路由。


6.用户权限和重定向跳转

Auth::check();         
//检查用户的权限true/false,用法如下图

Auth::user():          
//访问已被授权的用户

redirect::guest();      
//在重定向时会将当前url保存到session中,这样可以在登陆以后,使用Redirect::intended()方法跳转到之前的页面继续业务。

redirect::intended('/');  
//方法用来返回给重定向器用户在登录前所想要前往的 URL 地址,该方法也接收一个参数作为所请求地址不可用时的备用地址。

Auth::check()


7.资源控制器的删除操作

再点击退出删除之后浏览器将向指定地址发送一个post请求,但由于RESTful框架中会使用DELETE请求来删除一个资源,当用户点击时,实际上相当于删除了用户登录会话的资源,因此这里的退出操作需要使用DELETE请求来发送给服务器,由于浏览器不支持发送DELETE请求,我们需要使用一个隐藏域来伪造DELETE请求.

在Blade模板中,我们可以使用method_fidle方法创建隐藏域.

{{ method_field("DELETE") }}

转化的html代码如下

<input type="hidden" name="_method" value="DELETE">

完整版本

<form action="{{ route('logout') }}" method="POST">
  {{ csrf_field() }}
  {{ method_field('DELETE') }}
  <input type="submit" value="退出">
</form>
  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值