【发布时间】:2015-03-28 00:08:45
【问题描述】:
有没有一种简单的方法可以防止在 Eloquent 模型上执行某些 CRUD 操作?
我现在是怎么做的(根据记忆,我想我错过了一个与 Eloquent 的 save() 兼容的论点,但这并不重要):
<?php
class Foo extends Eloquent {
public function save()
{
// Prevent Foo from being updated.
if (!empty($this->id)) {
throw new \Exception('Update functionality is not allowed.');
}
parent::save();
}
}
在这种情况下,在任何情况下都不允许更新这些模型,我希望我的应用程序在尝试更新它们时爆炸。有没有更简洁的方法可以在不覆盖 Eloquent 的 save() 方法的情况下做到这一点?
【问题讨论】:
-
您可以设置 filablle 字段,并在设置数据库时使它们不为空,这样做会破坏很多好的原则。在 Laravel 5 上,你可以创建 FormRequests mattstauffer.co/blog/…
标签: laravel laravel-4 eloquent laravel-5