是否可以在 Laravel Eloquent 模型中映射列名称?

问题描述 投票:0回答:0

我有一个数据库表,其中有一列“可见”(真/假)。

Eloquent 模型已经有一个可见的属性,请参阅取自

Illuminate\Database\Eloquent\Model
的代码片段。

/**
 * The attributes that should be visible in arrays.
 *
 * @var array
 */
protected $visible = array();

打印模型时,“visible”属性是已经存在的数组而不是列值。有没有办法重命名模型中的列?我已经尝试过这个(在这里找到:http://laravel.com/docs/4.2/eloquent#accessors-and-mutators

public function setVisibleAttribute($value) {
    $this->attributes['isvisible'] = $value;
}
public function getVisibleAttribute($value) {
    $this->attributes['isvisible'];
}

我知道我可以这样解决问题:

User::select('id', 'name', 'visible as isVisible')->get(); 

我只是想知道是否没有真正内置的机制。

重要提示:现有软件也使用该数据库,因此重命名它并不是一个真正的选择。

php laravel-4 eloquent
© www.soinside.com 2019 - 2024. All rights reserved.