Laravel5.1 模型--Model簡介

在正式進入本節的以前,讓咱們先來看看什麼是ORM。php

ORM,即 Object-Relational Mapping(對象關係映射),它的做用是在關係型數據庫和業務實體對象之間做一個映射,這樣,咱們在操做具體的 業務對象時,就不須要再去和複雜的SQL語句打交道,只需簡單的操做對象的屬性和方法便可。laravel

ORM 兩種最多見的實現方式是 ActiveRecord 和 DataMapper,ActiveRecord 尤爲流行,在不少框架中都能看到它的身影。二者的區別主要在於 ActiveRecord 中模型與數據表一一對應,而 DataMapper 中模型與數據表是徹底分離的。數據庫

Laravel 中的 Eloquent ORM 使用的也是 ActiveRecord 實現方式,每個 Eloquent 模型類對應着數據庫中的一張表,咱們經過調用模型類的相應方法實現對數據庫的增刪改查。app

 

建立模型

咱們使用artisan命令來建立模型:框架

php artisan make:model Models/Article

 laravel默認將全部建立的模型放到app路徑下,咱們也能夠在建立時指定一個文件夾。咱們建立的這個模型 就在app\Models\路徑下。post

<?php

namespace App\Models;

use Illuminate\Database\Eloquent\Model;

class Article extends Model
{
    //
}

 

指定表名

若是不指定的話,Article模型對應的表就是articles,若是是一個Order模型 那它對應的表就是 orders,一次類推,若是要指定別的代表就添加一下代碼:spa

    //指定別的表名
    public $table = 'article';

 

指定主鍵

若是不指定主鍵,默認的主鍵是:id,若是要指定別的主鍵:code

    //指定別的主鍵
    protected $primaryKey = 'article_id';

 

時間戳設置

默認狀況下,Eloquent模型類會自動管理時間戳列create_atupdate_at,若是要取消自動管理,能夠設置$timestamps屬性爲falseorm

    public $timestamps = false;

還有,若是你想要設置時間戳的格式,可使用$dateFormat屬性,該屬性決定了日期時間以何種格式存入數據庫,以及以何種格式顯示:對象

    // 設置時間戳格式爲Unix
    protected $dateFormat = 'U';
相關文章
相關標籤/搜索