php – 如何在Laravel模型中编写NotMapped实体?

前端之家收集整理的这篇文章主要介绍了php – 如何在Laravel模型中编写NotMapped实体?前端之家小编觉得挺不错的,现在分享给大家,也给大家做个参考。
我是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,也可用.

猜你在找的Laravel相关文章