控制器方法:

//Eloquent ORM的使用:
public function orm1()
{
//all()
/*$students=Student::all();
dd($students);
*/ //find();
/*$student=Student::find(1001);
dd($student);*/ //findOrFail()
/*$student=Student::findOrFail(1008);
dd($student);*/ //查询构造器在ORM中的使用:
/*$students=Student::get();
dd($students);*/ //first()
/*$students=Student::where('id','>','1001')
->orderBy('age','desc')
->first();
dd($students);*/ //chunk()
/*Student::chunk(2,function ($students){
var_dump($students);
});*/ //查询构造器中的聚合函数:
//count
/*$num=Student::count();
var_dump($num);*/ //max()
/*$max=Student::where('id','>',1001)->max('age');
var_dump($max);*/
} //ORM中的新增、自定义时间戳及批量赋值:
public function orm2()
{
//使用模型新增数据:
/*$student = new Student();
$student->name = "笑笑";
$student->age = 22;
$bool =$student->save();
dd($student);*/ /*$student = Student::find(1007);
echo $student->created_at;*/ /*$student = Student::find(1007);
//自己格式化时间戳
echo date('Y-m-d H:i:s', $student->created_at);*/ //使用模型的Create方法新增数据:
/*$student=Student::create(
['name'=>'imooc','age'=>18]
);
var_dump($student);*/ //firstOrCreate() 以属性查找用户,若没有则新增,并取得新的实例:
/*$student= Student::firstOrCreate(
['name'=>'imoocs']
);
dd($student);*/ //firstOrNew()以属性查找用户,若没有则建立新的实例。需要保存的,自己调用save
$student = Student::firstOrNew(
['name' => 'imoocs789']
);
$bool = $student->save();
dd($bool);
} //ORM更新数据:
public function orm3()
{
//通过模型更新数据:( save保存方法不可行)
/*$student = Student::find(1001);
$student->name = 'kitty';
$bool=$student->save();
dd($bool);*/ //结合查询语句,批量更新:
/*$num=Student::where('id','>',1005)->update(
['age'=>41]
);
var_dump($num);*/ } //使用Eloquent ORM删除数据:
public function orm4(){ //通过模型删除数据:
/*$student=Student::find(1008);
$bool=$student->delete();
var_dump($bool);*/ //通过主键删除:
//
/*$num=Student::destroy(1010);*/ //删除两条数据:
/*$num=Student::destroy(1007,1009);*/
/*$num=Student::destroy([1007,1009]);
var_dump($num);*/ //通过条件删除:
/* $num=Student::where('id','>',1004)->delete();
var_dump($num);*/
}

  模型的设置:

<?php

namespace App;

use Illuminate\Database\Eloquent\Model;

class Student extends Model
{
//指定表名:
protected $table="student"; //指定id
protected $primaryKey="id"; //指定允许批量的字段:
protected $fillable=['name','age']; //指定不允许批量赋值的字段
protected $guarded=[]; //自动维护时间戳:
public $timestamps=true; //返回当前时间的时间戳,进入数据库,输出时,可以输出格式化好的时间。
protected function getDateFormat()
{
return time();
} //设置他之后,返回的就是数据表中的时间戳了。
protected function asDateTime($value)
{
return $value;
} }

  

laravel5.5种的Eloquent ORM的使用:的更多相关文章

  1. laravel5.5源码笔记(八、Eloquent ORM)

    上一篇写到Eloquent ORM的基类Builder类,这次就来看一下这些方便的ORM方法是如何转换成sql语句运行的. 首先还是进入\vendor\laravel\framework\src\Il ...

  2. Laravel Eloquent ORM

    Eloquent ORM 简介 基本用法 集体赋值 插入.更新.删除 软删除 时间戳 查询范围 关系 查询关系 预先加载 插入相关模型 触发父模型时间戳 与数据透视表工作 集合 访问器和调整器 日期调 ...

  3. [Laravel] 03 - DB facade, Query builder & Eloquent ORM

    连接数据库 一.Outline 三种操作数据库的方式. 二.Facade(外观)模式 Ref: 解读Laravel,看PHP如何实现Facade? Facade本质上是一个“把工作推给别人做的”的类. ...

  4. Eloquent ORM模型中添加自定义值

    我们都知道通过Laravel中数据库查询出来的模型对象都是基于数据库字段,今天给大家展示一个 Laravel Eloquent ORM 模型特性-附加值不存在于数据表中. 举个简单的栗子,一篇文章(p ...

  5. Eloquent ORM笔记

    基本操作 新增 $user = new User; $user->name = 'John'; $user->save(); $insertedId = $user->id;//从对 ...

  6. [转]Laravel 4之Eloquent ORM

    Laravel 4之Eloquent ORM http://dingjiannan.com/2013/laravel-eloquent/ 定义Eloquent模型 模型通常放在app/models目录 ...

  7. Eloquent ORM 学习笔记

    最近在学习Laravel,觉得ORM功能很强大,我这里只是简单探索了一点,如果有更好的笔记,还请分享. 因为重点在于Eloquent ORM,所以路由设置,控制器就不详细描述了,这里直接进入Model ...

  8. Eloquent ORM 之关联查询

    小伙伴们好,本文是在我的前一篇随笔的基础上完成的,还没有浏览的同学,请移尊驾哦 Eloquent ORM学习笔记. 前一篇文章用到了leftJoin方法,其实Eloquent对于模块之间的关联查询有自 ...

  9. Laravel 数据库操作 Eloquent ORM

    laravel 操作数据库一般都使用它的Eloquent ORM才操作 建立模型 <?php namespace App; use Illuminate\Database\Eloquent\Mo ...

随机推荐

  1. git 移除某个文件的版本管理

    1:最简单的,在项目刚创建的时候,在根目录的.gitignore,加入该文件的相对路径 2:已经被纳入到了版本控制,使用在当前目录下,打开cmd窗口 输入rm命令,加上文件的绝对路径(相对路径没试过) ...

  2. webpack打包静态资源和动态资源

    1.对于静态引用的资源: <img src = "static/modelname/imgname.png"> // 修改为下面的写法 <img src = &q ...

  3. 论文笔记:dropout

    Improving neural networks by preventing co-adaptation of feature detectors arXiv preprint arXiv: 120 ...

  4. 【分库分表】sharding-jdbc—分片策略

    一.分片策略 Sharding-JDBC认为对于分片策略存有两种维度: 数据源分片策略(DatabaseShardingStrategy):数据被分配的目标数据源 表分片策略(TableShardin ...

  5. Jquery编历数组

    <html> <head> <title>编历</title> <script type="text/javascript"& ...

  6. 20145327 《Java程序设计》第十周学习总结

    20145327 <Java程序设计>第十周学习总结 教材学习内容总结 网络编程就是运行在不同计算机中两个程序之间的数据交换. 网络中的每个设备都会有一个唯一的数字标识,这个就是IP地址. ...

  7. 20145329 吉东云《Java程序设计》第二周学习总结

    教材学习内容总结 第三章 基础语法 基本类型 1.整数(short.int.long) 2.字节(byte),可表示-128~127的整数 3.浮点数(float/double),主要储存小数数值 4 ...

  8. React绑定this的三种方式

    React可以使用React.createClass.ES6 classes.纯函数3种方式构建组件.使用React.createClass会自动绑定每个方法的this到当前组件,但使用ES6 cla ...

  9. DOS/BAT批处理if exist else 语句的几种用法

    在DOS批处理命令中常常会通过if语句来进行判断来执行下面的命令, 那么批处理if语句怎么用呢,下面学无忧小编就来说说有关批处理if以及if exist else语句的相关内容.一.批处理if书写格式 ...

  10. django的基本用法

    1.项目创建 # 新建一个文件夹DjangoProjects# 切换到需要的文件夹创建虚拟环境 C:\Projects\DjangoProjects>python -m venv test_ve ...