当前位置: 首页 > news >正文

laravel的ORM 对象关系映射

Laravel 中的 ORM(Eloquent ORM)是 Laravel 框架内置的一种对象关系映射系统,用于在 PHP 应用中与数据库进行交互。Eloquent 提供了一种优雅而直观的语法,使得开发者可以使用面向对象的方式进行数据库查询和操作。

定义模型(Models)

在 Laravel 中,每个数据库表对应一个模型。模型是 Eloquent ORM 的核心,它与数据库表之间建立了映射关系。

// 例如,定义一个 User 模型
namespace App\Models;use Illuminate\Database\Eloquent\Model;class User extends Model
{// 指定模型对应的数据表protected $table = 'users';
}

查询数据

// 查询所有用户
$users = User::all();// 查询单个用户
$user = User::find(1);// 使用条件查询
$users = User::where('name', 'John')->get();// 还可以链式调用多个查询条件
$users = User::where('name', 'John')->orWhere('name', 'Jane')->get();

插入和更新数据

// 插入一条数据
$user = new User;
$user->name = 'John';
$user->email = 'john@example.com';
$user->save();// 更新数据
$user = User::find(1);
$user->name = 'New Name';
$user->save();

删除数据

// 删除一条数据
$user = User::find(1);
$user->delete();// 删除满足条件的数据
User::where('name', 'John')->delete();

关联关系

// 定义一对多关系
class Post extends Model
{public function user(){return $this->belongsTo(User::class);}
}// 使用关联
$post = Post::find(1);
$user = $post->user;

这只是 Laravel Eloquent ORM 的基本用法,该 ORM 还支持更多高级特性,如软删除、观察者模式、查询构造器等。通过 Eloquent,Laravel 简化了与数据库的交互,提高了开发效率。
在这里插入图片描述

http://www.lryc.cn/news/257155.html

相关文章:

  • 049:VUE 引入jquery的方法和配置
  • Qt设置类似于qq登录页面
  • 【GDB】
  • 深入了解Java Duration类,对时间的精细操作
  • Python:核心知识点整理大全5-笔记
  • 预训练(pre-learning)、微调(fine-tuning)、迁移学习(transfer learning)
  • 王道数据结构课后代码题 p149 第8—— 12(c语言代码实现)
  • Nginx服务优化以及防盗链
  • 20231210 随机矩阵和M矩阵
  • Linux(centos)学习笔记(初学)
  • ECharts标题字体大小自适应变化
  • 解决使用pnpm安装时Sharp模块报错的方法
  • Redis 数据的持久化 RDB、AOF、RDB + AOF、No persistence 各自优缺点
  • 回味童年经典游戏的项目
  • Electron[5] 渲染进程和主进程
  • 基于Java SSM框架实现大学生校园兼职系统项目【项目源码+论文说明】
  • Codeforces Round 913 (Div. 3) A~E
  • 反序列化 [网鼎杯 2020 朱雀组]phpweb 1
  • Java 何时会触发一个类的初始化
  • 我的记事本
  • GO设计模式——4、单例模式(创建型)
  • 我对迁移学习的一点理解——领域适应(系列3)
  • 【openssl】RSA 生成公钥私钥 |通过私钥获取公钥
  • MongoDB的删除文档、查询文档语句
  • Rust编程语言入门教程(三)-trait
  • LeetCode-1566. 重复至少 K 次且长度为 M 的模式【数组 枚举】
  • QT5.4.1无法打开文件
  • 【1day】金和OA某接口存在未授权访问漏洞
  • 使用Rust 构建C 组件
  • AI:大模型技术