Laravel所自带的Eloquent ORM是一个优美、简洁的ActiveRecord类,用来实现数据库操作
每个数据表都有一个与之对应的“模型”,用于和数据表交互。MVC架构中,Controller不是直接去数据库中取数据,而是先定义好Model,然后Controller取Model取数据的。
建立模型
use Illuminate\Datebase\Eloquent\Model;
class Student extends Model
{
// 指定表名
protected $table = 'student';
// 指定主键
protected $primaryKey = 'id';
}
ORM中的新增、自定义时间戳及批量赋值
两种方式:
通过模型新增数据(设计到自定义时间戳)
public function create()
{
// 使用模型新增数据
$student = new Student();
$student->name = 'ck';
$student->age = 18;
$student->save();
}
使用模型的Create方法新增数据(涉及到批量赋值)
$student = Student::create(
['name' => 'ck', 'age' => 18];
);
需要指定允许批量赋值的字段
protected $fillable = ['name', 'age'];
使用ORM修改数据
两种方式
通过模型更新
public function update()
{
$student = Student::find(1);
$studnet->name = 'ck';
$student->save();
}
结合查询语句批量更新
public function update()
{
$num = Student::where('id', '=', 1)->update(
['age' => 41]
);
}
使用ORM删除数据
三种方式
通过模型删除
public function modelDelete()
{
$student = Student::find(1);
$student->delete();
}
通过主键值删除
public function deleteKey
{
$num = Student::destroy(1,2);
}
根据指定条件删除
public function conditionDelete()
{
Student::where('id', '=', 1)->delete();
}