1、创建模型
php artisan make:model Models\User
2、根据数据库的表创建模型
那就是:laravel-model-generator,github 地址:https://github.com/ignasbernotas/laravel-model-generator;操作步骤:
第一步,命令行进入项目的根目录,输入命令:
composer require ignasbernotas/laravel-model-generator
第二步,在 app/Providers/AppServiceProvider.php 文件的 register 方法里面,加入如下代码:
public function register()
{
if ($this->app->environment() == 'local')
{
$this->app->register('Iber\Generator\ModelGeneratorProvider');
}
}
第三步,输入命令:
php artisan make:models
大功告成,看看 app/Models 文件夹下面是不是多了很多模型文件
2、创建模型同时创建migration
php artisan make:model Models\User -m
//使用控制台输入命令,创建模型,加上 -m就是同时创建Migration
php artisan migrate
//在Migration配置好数据表字段后,输入该命令,保存数据表
3、代码创建模型
<?php
namespace App\Models;
use Illuminate\Database\Eloquent\Model;
class TestModel extends Model
{
protected $table ='test_model';
public $guarded = [];
//假如要使用模型的create()方法创建数据,则必须显示声明$guarded字段值为空数组
public $timestamps=false;
//如果这个模型的数据表中没有created_at和updated_at字段,则必须将$timestamps值显示声明为false
}
4、模型对数据库的操作
public function orm()
{
//查询表的所有记录
$user = Admin::all();
dd($user);
//查询某一条记录
$user = Admin::find(2);
dd($user);
//findOrFail() 根据主键查找,如果没有找到就抛出异常
$user = Admin::findOrFail(1);
dd($user);
//查询所有记录
$user = Admin::get();
dd($user);
//增加条件查询
$user = Admin::where('uid','>=',4)->orderBy('uid','desc')->first();
//分段查询
Admin::chunk(2,function($user){
var_dump($user);
});
//聚合函数
//获取记录的条数
$count = Admin::count();
dd($count);
//获取最大值
$max = Admin::where('uid','>=',5)->max('age');
//使用模型新增数据
$user = new Admin();
$user-> username = 'haha';
$bool = $user->save();
dd($bool);
//获取时间
$user = Admin::find(1);
echo date('Y-m-d H:i:s',$user->create_at);
//使用模型的Create方法新增数据
$user = Admin::create(['username'=>'meimei']);
dd($user);
//以属性查找用户,如果没有则新增
$user = Admin::firstOrCreate(['username'=>'imooc']);
dd($user);
//以属性查找用户,如果没有则新增,但不保存到数据库
$user = Admin::firstOrNew(['username'=>'imooc']);
dd($user);
//通过模型更新数据
$user = Admin::find(1);
$user->username = 'jack';
$bool = $user->save();
dd($bool);
//增加条件
$num = Admin::where('id','>','1')->update(['age'=>21]);
dd($num);
//通过模型删除
$user = Admin::find(6);
$bool = $user->delete();
dd($bool);
//通过主键删除
$num = Admin::destroy(6);
dd($num);
//删除多条记录
$num = Admin::destroy(1,2,3);
$num = Admin::destroy([1,2,3]);
dd($num);
//增加条件的删除操作
$num = Admin::where('uid','>','4')->delete();
dd($num);
}
