php - Laravel 5.5——经过身份验证的用户和 guest 用户的单独表

标签 php mysql laravel-5 laravel-5.5

我对主题 Laravel 5.5 -- 经过身份验证的用户和 guest 用户的单独表的搜索结果为经过身份验证的用户和 guest 用户提供了单独的 URL。但是,我有一个表,其中很少有字段适用于所有用户,其余字段仅适用于经过身份验证的用户。我应该拆分表格吗?

我想拆分表格,因为下面的函数返回所有列。在 View 中,我只选择要显示的特定字段。如果有人在没有浏览器的情况下发出 GET 请求,那么无论用户类型如何,它都不会返回所有列。

public function show(Balancesheet $Balancesheet) { 
    return view('Balancesheets.show', compact('Balancesheet')); 
} 

最佳答案

如果您想获取特定列,可以使用“pluck()”方法,该方法允许您选择特定列。如果您的 Laravel 版本早于 5.3,请将 pluck 重命名为 lists:

if(\Auth::user())  {
    User::pluck('user_column')->all();
} else  {
    User::pluck('guest_column')->all();
}

如果您需要多列,您可以在 get() 方法中选择它们:

if(\Auth::user()) {
    query->get(['guest','columns']);
} else  {
    query->get(['user','columns']);
}

关于php - Laravel 5.5——经过身份验证的用户和 guest 用户的单独表,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/48732916/

相关文章:

php - 在 PHP 中使用 IMAP 知道电子邮件是否是回复

php - 无法删除 CodeIgniter 数据库中最旧的记录

mysql - Node.js mysql响应格式

mysql - CodeIgniter、事件记录、JOIN 有帮助吗?

php - 包含非 ASCII 字符的字符串会被 PHP/MySQL 截断

php - Laravel 5 单路由多 Controller 方法

php - 返回客户端时,PHP中的服务器端对象为空

php - 如何在 PHP 中将预取数据映射到模型?

php - 有一个通过 Laravel Eloquent

php - Laravel save() 方法返回 true 但不更新记录