Warning: file_get_contents(/data/phpspider/zhask/data//catemap/0/laravel/10.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Php Laravel5:在模型中修改列名的最佳方法_Php_Laravel_Laravel 5 - Fatal编程技术网

Php Laravel5:在模型中修改列名的最佳方法

Php Laravel5:在模型中修改列名的最佳方法,php,laravel,laravel-5,Php,Laravel,Laravel 5,在从模型检索数据之前,修改列名的最佳方法是什么,例如:将id更改为uid 谢谢,最简单的选项是创建自定义属性getter。这将允许您像访问任何其他属性一样访问uid值,并且该值也可以通过toArray方法访问 最简单的选项是创建自定义属性getter。这将允许您像访问任何其他属性一样访问uid值,并且该值也可以通过toArray方法访问 您是指永久修改数据库架构,还是仅修改视图中使用的模型数据结构?在运行时修改列名,而不是在数据库中永久修改列名,您是指永久修改数据库架构,还是仅修改视图中使用的模

在从模型检索数据之前,修改列名的最佳方法是什么,例如:将id更改为uid


谢谢,

最简单的选项是创建自定义属性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, ...];