首页
学习
活动
专区
圈层
工具
发布
首页
学习
活动
专区
圈层
工具
MCP广场
社区首页 >问答首页 >Laravel 5.6,在运行时创建属性

Laravel 5.6,在运行时创建属性
EN

Stack Overflow用户
提问于 2019-08-01 04:10:11
回答 1查看 102关注 0票数 0

通过以下方式:

代码语言:javascript
运行
复制
Users::all();

根据我的数据库列,我有所有的用户。在我的例子中,我有

代码语言:javascript
运行
复制
id|name|first_name

但我需要将namelast_name放在同一个密钥中。

Laravel 5.6有没有为该用户集合动态创建另一列的选项?

类似于:

代码语言:javascript
运行
复制
Users::createColumn('fullname', ['name, 'last_name');

或者类似的东西。

编辑:

现在我正在做这件事:

代码语言:javascript
运行
复制
$users = User::all();

$users->map(function ($fullname) {
    $fullname['fullname'] = $fullname->name . ' ' . $fullname->last_name;
        return $fullname;
    });
EN

回答 1

Stack Overflow用户

发布于 2019-08-01 04:40:36

Laravel's Accessors & Mutators就是你要找的东西。

在您的User.php模型中:

代码语言:javascript
运行
复制
/**
 * Get the user's full name.
 *
 * @return string
 */
public function getFullnameAttribute()
{
    return "{$this->name} {$this->last_name}";
}

然后,您可以像这样访问它:

代码语言:javascript
运行
复制
$user->fullname
票数 0
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/57298170

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档