如何打开所有模型的softDelete,而不必在每个模型中指定以下内容:
use Illuminate\Database\Eloquent\SoftDeletingTrait;
class ListItem extends Eloquent
{
use SoftDeletingTrait;
protected $table = 'list_items';
protected $dates = ['deleted_at'];
public function product(){
return $this->hasOne('Product');
}
}发布于 2015-01-27 09:51:55
只需创建一个BaseModel类即可。让我们在多个模型之间共享各种功能和配置:
class BaseModel extends Eloquent {
use SoftDeletingTrait;
protected $dates = ['deleted_at'];
}然后让你的模型扩展这个类
class ListItem extends BaseModel {
public function product(){
return $this->hasOne('Product');
}
}顺便说一下,list_items已经是传统的表名(snake_case和复数),所以您不必显式地指定它。
发布于 2015-01-27 09:08:13
如果我是你,我会使用基类。让你的所有模型扩展一个类,这个类反过来又扩展了雄辩。然后,您可以在基类中放置任何影响所有模型的内容。
https://stackoverflow.com/questions/28166615
复制相似问题