Lpc*_*ark 5 php view column-alias laravel
我想要实现的是在我的数据库中我有一个名为channel的表我正在使用laravel的eloquent类从表中访问这些属性我面临的问题是
表名是列,列名是通道
所以当访问该属性时看起来像这样.
User::find(1)->channel->channel
Run Code Online (Sandbox Code Playgroud)
我怎么能修改这个说
User::find(1)->channel->name
Run Code Online (Sandbox Code Playgroud)
我们无法更改数据库中的表名.
我想到的选项:
1)为需要更改列的表创建视图.太乱了...
2)使用列别名.... laravel文档...叹息..不知道怎么样?
3)使用带有create_function的属性集来调用this-> channel但我很确定它不起作用,因为laravel正在使用动态属性.当它在数组中填写时,我非常确定它会将其更改为列的名称.
我可以在我的belongs_to/hasOne/hasMany函数中将属性更改为我想要使用的名称的别名,以便稍后我可以更改它.我不知道那会有多好用......
有什么想法吗?非常感激
Ale*_*ult 13
您可以使用Accessors/Mutators轻松完成.
class Channel extends Eloquent {
public function getNameAttribute()
{
return $this->attributes['channel'];
}
public function setNameAttribute($value)
{
$this->attributes['channel'] = $value;
}
}
Run Code Online (Sandbox Code Playgroud)
归档时间: |
|
查看次数: |
8333 次 |
最近记录: |