php laravel model,Laravel model常用方法(持续更新中)

Laravel model常用方法(持续更新中)

那随意了 • 2019 年 12 月 17 日

Laravel model常用方法

增Classes::create($request->all());

删Classes::findOrFail($id)->delete();

关联删除

classes.php<?php

namespace App;

use Illuminate\Database\Eloquent\Model;

class Classes extends Model

{

//

protected $fillable = [

'name','department','open',

];

public function courses(){

return $this->hasMany('App\Courses');

}

}

Courses.php<?php

namespace App;

use Illuminate\Database\Eloquent\Model;

class Courses extends Model

{

//

public function classes(){

return $this->belongsTo('App\Classes');

}

}

之后执行Classes::findOrFail($id)->courses()->delete();//先删除关联之下的课程字段

Classes::findOrFail($id)->delete();//然后删除班级

改$classes=Classes::FindOrFail($id);

$classes->name=$request->name;

$classes->department=$request->department;

$classes->save();

查$classes=Classes::FindOrFail($id);

//个人推荐使用FindOrFail,因为在查询是做关联查询,如果使用findOrFail会报404,而使用find会报空指针异常

//或

$classes=Classes::find($id);

//有时你希望在未找到模型时抛出异常。这在控制器和路由中非常有用。 findOrFail 和 firstOrFail 方法会检索查询的第一个结果,如果未找到,将抛出 Illuminate\Database\Eloquent\ModelNotFoundException 异常:。

如果没有捕获异常,则会自动返回 404 响应给用户。也就是说,使用这些方法时,没有必要再写个检查来返回 404 响应:

//查询第一条数据

$open=Classes::where('open',1)->first();

关联查询$classes=Classes::find($id);//先获取对象的实例

$courses=$classes->courses()->get();//查询对应的实例

相关阅读

laravel框架中的Model操作数据库 , 相比DB类有什么明显的优越性吗?

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值