Php Laravel5:在模型中修改列名的最佳方法
在从模型检索数据之前,修改列名的最佳方法是什么,例如:将id更改为uidPhp Laravel5:在模型中修改列名的最佳方法,php,laravel,laravel-5,Php,Laravel,Laravel 5,在从模型检索数据之前,修改列名的最佳方法是什么,例如:将id更改为uid 谢谢,最简单的选项是创建自定义属性getter。这将允许您像访问任何其他属性一样访问uid值,并且该值也可以通过toArray方法访问 最简单的选项是创建自定义属性getter。这将允许您像访问任何其他属性一样访问uid值,并且该值也可以通过toArray方法访问 您是指永久修改数据库架构,还是仅修改视图中使用的模型数据结构?在运行时修改列名,而不是在数据库中永久修改列名,您是指永久修改数据库架构,还是仅修改视图中使用的模
谢谢,最简单的选项是创建自定义属性getter。这将允许您像访问任何其他属性一样访问uid值,并且该值也可以通过toArray方法访问
最简单的选项是创建自定义属性getter。这将允许您像访问任何其他属性一样访问uid值,并且该值也可以通过toArray方法访问
您是指永久修改数据库架构,还是仅修改视图中使用的模型数据结构?在运行时修改列名,而不是在数据库中永久修改列名,您是指永久修改数据库架构,还是仅修改视图中使用的模型数据结构?在运行时修改列名,而不是在数据库中永久修改列名,如何与user::all一起使用,它检索行数组?我可以在不调用$user->uid的情况下修改它吗?只需打印$dataUser::all将返回一组用户模型实例,因此每个实例都可以访问$User->uid。是的,但我想以JSON的形式返回此信息集合,其中没有调用$User->uid的循环,或者打印所有这些实例(如果您查看Laravel源代码),您将看到,在内部调用$users->toJson使用toArray函数,因此它将按照您的要求执行。此外,将此信息包含在原始问题中会很有帮助。如何将其与user::all一起使用,它检索行数组?我可以在不调用$user->uid的情况下修改它吗?只需打印$dataUser::all将返回一组用户模型实例,因此每个实例都可以访问$User->uid。是的,但我想以JSON的形式返回此信息集合,其中没有调用$User->uid的循环,或者打印所有这些实例(如果您查看Laravel源代码),您将看到,在内部调用$users->toJson使用toArray函数,因此它将根据您的需要执行。此外,在原始问题中包含此信息也会有所帮助。
$data = user::all(); //return array('uid'=>1,'uid'=>2 ... etc)
class User extends Model
{
// ...
public $appends = [
'uid',
];
public function getUidAttribute()
{
return $this->attributes['id'];
}
// ...
}
$user->uid; // 1
$user->toArray() // [..., 'uid' => 1, ...];