我是laravel的新手,因此我的问题可能对某些人来说很奇怪.好吧,我的问题是如何在Laravel Model类中编写一个实体,在迁移后不会在数据库中创建任何字段.例如
class JobseekerModel extends Model { use SoftDeletes; protected $table='dbl_jobseekers'; protected $primaryKey='id'; protected $fillable=[ 'FirstName','MiddleName','LastName','Dob','Education','DesireField','Skill','SpecialSkill','Experience','Location','HomeAddress','Salary','Comenteries','Resume' ]; protected $dates = ['deleted_at']; }
这是我的模型,现在我想在我的模型中添加另一个名为’PagedListSize’的属性,但我不想将其创建为数据库列.那我该怎么做?
例如,我熟悉在.Net Framework中使用NotMapped属性,它是用来编写的
[NotMapped] public int PagedListSize {set; get;}
那么,我该怎么做呢.在laravel有没有办法做到这一点?我正在研究Laravel 5.4
在Laravel中执行此操作的最佳方法实际上是通过
custom Mutators.此外,mutators可以配置为显示在模型的json或数组输出转储中.例如对于PagedListSize,我们可以:
public functionGetPagedListSizeAttribute() { return #some evaluation; } protected $appends = array('pagedListSize');
这样,pagedListSize不仅可以直接作为字段使用,而且只要模型为serialized为Json或Array,也可用.