1. 简介

2. 创建模型

//模型文件默认创建在app目录下,也可以指定创建在某个文件夹下,如Model/Goods
1. php artisan make:model Goods
2. 这种方式会自动创建一个数据库迁移文件
php artisan make:model Goods -m

3. 模型限定

1. 模型所对应的默认表名是在模型后面加s,如果模型名称后面有s,则表名跟模型名称同名,eg:
Order => orders,
Goods => goods,
Country => countries 2. 主键字段 id 3. 时间字段 created_at, updated_at

4. 属性设置

1. 设置操作的表名
public $table = 'userinfo'; 2. 设置默认的时间字段
public $timestamps = false; 3. 设置默认的主键名称
public $primaryKey = 'uid';

5. 数据操作

//UserController.php
//创建模型对象
$goods = new \App\Goods;
//添加
$goods->title = '今天周四';
$goods->content = '今天天气很好哦,是个大晴天';
$goods->created_at = date('Y-m-d H:i:s');
$goods->updated_at = date('Y-m-d H:i:s');
$goods->save(); //读取
$info = \App\Goods::find(5);
//读取字段信息
echo $info->title;
echo $info->info['title']; //删除操作
$info = \APP\Goods::find(5);
$info->delete(); //更新操作
$info = \App\Goods::find(4);
$info->title = '今天周四丫';
$info->conten = '现在是晚上啦';
$info->save(); //向使用查询构造器一样使用模型,导入\App\Goods类
$data = Goods::get();
$data = Goods::OrderBy('id','desc')->where('id','>',2)->get();

6. 关系

模型图

6.1 一对一的关系设置

//User.php user模型
public function userinfo()
{
return $this->hasOne('App\Userinfo','user_id');
}

6.2  一对多的关系设置

//User.php  user模型
public function post()
{
return $this->hasMany('App\Post','user_id');
}

6.3  属于关系创建

//User.php  user模型
public function country()
{
return $this ->belongsTo('App\Country','country_id');
}

6.4  多对多的关系创建

//User.php  user模型
public function group()
{
return $this->belongsToMany('App\Group','group_user','user_id','group_id');
}

laravel 模型操作的更多相关文章

  1. laravel7 ORM和laravel模型操作

    1.什么是ORM 对象关系映射(Object Relation Maping),这个关系就是关系数据库.因此,顾名思义,ORM的核心是我们通过操作对应来操作关系数据库. ORM的优点:  ORM提供了 ...

  2. Laravel 5.2 四、.env 文件与模型操作

    一..env文件 .env 文件是应用的环境配置文件,在配置应用参数.数据库连接.缓存处理时都会使用这个文件. // 应用相关参数 APP_ENV=local APP_DEBUG=true //应用调 ...

  3. Laravel 模型事件入门

    Laravel 模型事件允许你监听模型生命周期内的多个关键点,甚至可以在阻止一个模型的保存或者删除. Laravel 模型事件文档 概述了如何使用钩子将对应事件与相关的事件类型关联起来,但是本文的主旨 ...

  4. laravel基础操作手册

    laravel基础操作手册 1.路由配置 测试配置路由: Route::get('/test', 'TestController@index'); 2.控制器书写 3.模型文件 4.增加扩展类文件 L ...

  5. laravel模型中非静态方法也能静态调用的原理

    刚开始用laravel模型时,为了方便一直写静态方法,进行数据库操作. <?php namespace App\Models; use Illuminate\Database\Eloquent\ ...

  6. Laravel模型事件的实现原理详解

    模型事件在 Laravel 的世界中,你对 Eloquent 大多数操作都会或多或少的触发一些模型事件,下面这篇文章主要给大家介绍了关于Laravel模型事件的实现原理,文中通过示例代码介绍的非常详细 ...

  7. 黑马lavarel教程---5、模型操作(AR模式)

    黑马lavarel教程---5.模型操作(AR模式) 一.总结 一句话总结: AR: ActiveRecord :Active Record(活动记录),是一种领域模型模式,特点是一个模型类对应关系型 ...

  8. .NET使用DAO.NET实体类模型操作数据库

    一.新建项目 打开vs2017,新建一个项目,命名为orm1 二.新建数据库 打开 SqlServer数据库,新建数据库 orm1,并新建表 student . 三.新建 ADO.NET 实体数据模型 ...

  9. xBIM 基本的模型操作

    目录 xBIM 应用与学习 (一) xBIM 应用与学习 (二) xBIM 基本的模型操作 xBIM 日志操作 XBIM 3D 墙壁案例 xBIM 格式之间转换 xBIM 使用Linq 来优化查询 x ...

随机推荐

  1. 常用font-family

    微软雅黑: Microsoft YaHei 宋体:SimSun 黑体:SimHei 仿宋: FangSong 楷体:  KaiTi 隶书:LiSu 幼圆:YouYuan 华文细黑:STXihei 华文 ...

  2. 使用svn创建分支!

    1 在主分支上 右键svn---选中 branch/Tag选项 2,填写新分支目录之后 点击 ok键 3,在新创建的分支目录 右键 --> Chenckout下  就可以把代码拉下来了 4.更新 ...

  3. 前端使用crypto.js进行加密

    前端使用crypto.js进行加密 https://www.cnblogs.com/lz2017/p/8046816.html   最近我在前端使用Cookies保存密码的时候需要前端来进行加密工作, ...

  4. 棒槌的工作第八天-----------------------早会-------三次握手四次挥手(转载https://www.cnblogs.com/zmlctt/p/3690998.html)尚待了解,下班补充

    TCP三次握手 所谓三次握手(Three-way Handshake),是指建立一个TCP连接时,需要客户端和服务器总共发送3个包. 三次握手的目的是连接服务器指定端口,建立TCP连接,并同步连接双方 ...

  5. samba、ftp和ssh服务

    samba服务 Smb主要作为网络通信协议; Smb是基于cs架构: 完成Linux与windows之间的共享:linux与linux之间共享用NFS 第一步:安装samba [root@ken ~] ...

  6. redmine2.5升级到3.4

    第一.安装需要升级的版本 参考文档:https://www.cnblogs.com/panwenbin-logs/p/10174525.html 二.备份源数据 [root@localhost ~]# ...

  7. QVector也是隐式数据共享的

    Behind the scenes, QString uses implicit sharing (copy-on-write) to reduce memory usage and to avoid ...

  8. 执行计划:SET AUTOTRACE TRACEONLY

    SET AUTOTRACE OFF ---------------- 不生成AUTOTRACE 报告,这是缺省模式SET AUTOTRACE ON EXPLAIN ------ AUTOTRACE只显 ...

  9. 如何解决fiddler的响应显示乱码问题

    fiddler中Response出现乱码, 这是因为HTML被压缩了, 我们可以通过两种方法去解压.方法1:点击Response Raw上方的"Response is encoded any ...

  10. zuul ci

    . ├── a_module ├── b_module ├── lib ├── zuul │   ├── check │   ├── ci │   ├── gate │   ├── layout.ya ...