一、模型
1.1 创建
php artisan make:model Order
php artisan make:model Models\Order 带有命名空间的模型
1.2 限定
1. 数据表名称限定
模型所对应的默认的表名是在模型后面加s, 如果模型名称后面有s,则表名跟模型名称同名.
eg:
Order => orders
Goods => goods
country => countries
设置
// 设置模型操作的表名
public $table = 'users';
2. 主键限定
主键的字段名称 id
public $primaryKey = 'uid';
3. 时间字段限定
public $timestamps = false; //不验证时间字段
protected $dateFormat = 'U'; //修改时间字段值为时间戳格式
二、模型操作
获取
多条 Order::all()
单条 Order::find(id)
添加
$order = new Order;
$order -> name = '';
$order -> age = '';
$order -> save()
修改
$order = Order::find(10);
$order -> name = '';
$order -> age = '';
$order -> save()
删除
方法一:
$user = Orders::find(99);
$user -> delete();
方法二:
App\Flight::destroy(1);
App\Flight::destroy([1, 2, 3]);
App\Flight::destroy(1, 2, 3);
软删除
1. 导入软删除类
use Illuminate\Database\Eloquent\SoftDeletes;
class Goods extends Model
{
//
use SoftDeletes;
}
2. 获取被删除模型
onlyTrashed 方法会 只 获取已被软删除的模型:
Order::onlyTrashed()->where('airline_id', 1)->get(); 获取指定
Order::onlyTrashed()->get(); 获取所有
3. 你也可以在查找上使用 restore 方法来快速地恢复多个模型:
Order::withTrashed()->where('airline_id', 1)->restore(); 恢复指定
Order::withTrashed()->restore(); 恢复所有
4. 永久删除
Order::where()->forceDelete(); 删除指定
Order::forceDelete(); 删除所有
三、模型关系
class User extends Model
{
//一对一
public function userinfo()
{
return $this->hasOne('App\Userinfo','user_id');
}
//属于
public function country()
{
return $this->belongsTo('App\Country','country_id');
}
//一对多
public function post()
{
return $this->hasMany('App\Post','user_id');
}
//多对多
public function group()
{
return $this->belongsToMany('App\Group','group_user','user_id','group_id');
}
}
网友评论