Laravel Eloquent模型如何创建_Laravel ORM基础之Model创建与使用教程

发布时间 - 2025-12-06 00:00:00    点击率:
Eloquent模型通过artisan make:model命令创建,可配合-m生成迁移文件;配置$table、$fillable等属性后,即可用all()、find()、create()等方法实现增删改查操作。

在Laravel中,Eloquent ORM是与数据库交互的核心工具。每个数据库表对应一个Eloquent模型,通过模型可以方便地进行增删改查操作。创建和使用Eloquent模型非常简单,下面一步步说明如何创建并使用它。

生成Eloquent模型

使用Artisan命令行工具可以快速生成模型。打开终端,执行以下命令:

artisan make:model Article

这会在app/Models目录下生成一个Article.php文件。如果目录不存在,建议先创建,并在composer.json中注册命名空间,或使用--model选项配合其他命令(如迁移)。

更常见的做法是同时生成模型和对应的迁移文件:

artisan make:model Article -m

这样会同时创建模型类和数据库迁移文件,便于后续同步数据表结构。

配置模型属性

打开生成的模型文件,通常需要设置几个关键属性:

  • $table:指定关联的数据表名,如果不设置,默认使用模型的复数形式(如articles)。
  • $primaryKey:定义主键字段,默认是id
  • $fillable:设置可批量赋值的字段,防止恶意数据填充。
  • $guarded:与fillable相反,定义不允许批量赋值的字段。
  • $timestamps:是否自动维护created_atupdated_at,默认为true

示例:

class Article extends Model
{
    protected $table = 'articles';
    protected $fillable = ['title', 'content', 'author'];
    public $timestamps = true;
}

基本使用方法

模型创建完成后,就可以在控制器或路由中使用了。

插入数据: $article = new Article;
$article->title = '我的第一篇文章';
$article->content = '文章内容...';
$article->save();

或者使用批量赋值:

Article::create(['title' => '新文章', 'content' => '内容', 'author' => '张三']); 查询数据: // 获取所有记录
$articles = Article::all();

// 根据条件查询
$article = Article::where('author', '张三')->first();

// 按ID查找
$article = Article::find(1);
更新数据: $article = Article::find(1);
$article->title = '已修改标题';
$article->save();
删除数据: $article = Article::find(1);
$article->delete();

基本上就这些。掌握模型的创建和基础操作后,可以进一步学习关联关系、访问器、修改器等高级功能。Eloquent的设计让数据库操作变得直观且高效。


# php  # laravel  # js  # json  # composer  # app  # 工具  # 路由  # 修改器  # 命名空间  # class  # public  # protected  # 访问器  # delete  # table  # 数据库  # 几个  # 并在  # 不存在  # 用它  # 这会  # 命令行  # 并使  # 就可以  # 默认为 


相关栏目: 【 网站优化151355 】 【 网络推广146373 】 【 网络技术251813 】 【 AI营销90571


相关推荐: Python并发异常传播_错误处理解析【教程】  如何确保西部建站助手FTP传输的安全性?  如何制作一个表白网站视频,关于勇敢表白的小标题?  Laravel怎么为数据库表字段添加索引以优化查询  jquery插件bootstrapValidator表单验证详解  Python正则表达式进阶教程_复杂匹配与分组替换解析  装修招标网站设计制作流程,装修招标流程?  黑客如何利用漏洞与弱口令入侵网站服务器?  车管所网站制作流程,交警当场开简易程序处罚决定书,在交警网站查询不到怎么办?  电视网站制作tvbox接口,云海电视怎样自定义添加电视源?  公司网站制作价格怎么算,公司办个官网需要多少钱?  音乐网站服务器如何优化API响应速度?  合肥制作网站的公司有哪些,合肥聚美网络科技有限公司介绍?  Laravel怎么实现验证码(Captcha)功能  消息称 OpenAI 正研发的神秘硬件设备或为智能笔,富士康代工  北京网站制作的公司有哪些,北京白云观官方网站?  JavaScript如何实现倒计时_时间函数如何精确控制  如何构建满足综合性能需求的优质建站方案?  详解Nginx + Tomcat 反向代理 如何在高效的在一台服务器部署多个站点  使用C语言编写圣诞表白程序  laravel怎么配置和使用PHP-FPM来优化性能_laravel PHP-FPM配置与性能优化方法  详解免费开源的DotNet二维码操作组件ThoughtWorks.QRCode(.NET组件介绍之四)  北京网站制作公司哪家好一点,北京租房网站有哪些?  如何用AI一键生成爆款短视频文案?小红书AI文案写作指令【教程】  智能起名网站制作软件有哪些,制作logo的软件?  ChatGPT常用指令模板大全 新手快速上手的万能Prompt合集  Laravel怎么定时执行任务_Laravel任务调度器Schedule配置与Cron设置【教程】  Swift开发中switch语句值绑定模式  如何在宝塔面板中修改默认建站目录?  如何正确选择百度移动适配建站域名?  PHP 500报错的快速解决方法  如何制作新型网站程序文件,新型止水鱼鳞网要拆除吗?  如何快速上传自定义模板至建站之星?  JS弹性运动实现方法分析  Laravel distinct去重查询_Laravel Eloquent去重方法  PHP的CURL方法curl_setopt()函数案例介绍(抓取网页,POST数据)  Laravel Vite是做什么的_Laravel前端资源打包工具Vite配置与使用  瓜子二手车官方网站在线入口 瓜子二手车网页版官网通道入口  网站制作软件有哪些,制图软件有哪些?  lovemo网页版地址 lovemo官网手机登录  Java类加载基本过程详细介绍  Edge浏览器如何截图和滚动截图_微软Edge网页捕获功能使用教程【技巧】  详解免费开源的.NET多类型文件解压缩组件SharpZipLib(.NET组件介绍之七)  成都品牌网站制作公司,成都营业执照年报网上怎么办理?  手机软键盘弹出时影响布局的解决方法  ,交易猫的商品怎么发布到网站上去?  jimdo怎样用html5做选项卡_jimdo选项卡html5实现与切换效果【指南】  Windows10如何更改计算机工作组_Win10系统属性修改Workgroup  Win11搜索栏无法输入_解决Win11开始菜单搜索没反应问题【技巧】  如何安全更换建站之星模板并保留数据?