tentail / simple-model
简单的 Eloquent 模型。
0.1.0
2019-06-02 08:12 UTC
Requires (Dev)
- orchestra/testbench: ^3.8
This package is not auto-updated.
Last update: 2024-10-03 05:45:54 UTC
README
介绍
一个简单的 Eloquent 模型版本,没有数据库配置的模型。所有函数和属性都尽可能地保留原有 Laravel/framework 的设计。
欢迎提出任何相关的功能和 Bug。
安装
Composer
composer require tentail/simple-model
函数
SimpleModel 不连接数据库,所以移除了以下功能:
- Illuminate\Database\Eloquent\Concerns\HasEvents
- Illuminate\Database\Eloquent\Concerns\HasGlobalScopes
- Illuminate\Database\Eloquent\Concerns\HasRelationships
- Illuminate\Database\Eloquent\Concerns\HasTimestamps
- protected $connection;
- protected $table;
- protected $primaryKey = 'id';
- protected $keyType = 'int';
- public $incrementing = true;
- 等等,太多了这里不一一列举
保留的主要功能:
- Illuminate\Database\Eloquent\Concerns\GuardsAttributes
- [x] 基本的 $fillable 和 $guarded 功能。这个 trait 只在 SimpleModel 的
fill()
时起作用。
- [x] 基本的 $fillable 和 $guarded 功能。这个 trait 只在 SimpleModel 的
- Illuminate\Database\Eloquent\Concerns\HasAttributes
- [x] protected $attributes = [];
- [x] protected $original = [];
- [x] protected $dateFormat;
- [x] protected $casts = [];
- [x] 访问器 & 修改器
- Illuminate\Database\Eloquent\Concerns\HidesAttributes
- [x] protected $hidden = [];
- [x] protected $visible = [];
- ArrayAccess
- Arrayable
- Jsonable
用法
创建一个 SimpleModel
使用 make:simple-model
Artisan 指令来快速创建 SimpleModel:
php artisan make:simple-model News
<?php
namespace App;
use SimpleModel\SimpleModel;
class News extends SimpleModel
{
/**
* The attributes that aren't mass assignable.
*
* @var array
*/
protected $guarded = [];
}
创建一个 SimpleModel 对象
$news = new News($attributes);
$news = new News;
$news->fill($attributes);