为了账号安全,请及时绑定邮箱和手机立即绑定

在控制器中获取特定信息?

在控制器中获取特定信息?

PHP
一只名叫tom的猫 2022-05-27 15:41:35
我的控制器有问题并在其中获取数据。我的问题是,当我像这样让我的团队时:$team = Team::where('join_number', '=', $data['team'])->get();我似乎无法通过去访问它$team->join_request_needed = 'True'例如?如果我只是死转储$team->join_request_needed我收到“此集合实例上不存在属性 [join_request_needed]”。我如何访问这些数据?如果我死了转储$team,我会得到这个;所以它得到数据?Illuminate\Database\Eloquent\Collection {#282 ▼  #items: array:1 [▼    0 => App\Team {#291 ▼      #guarded: []      #connection: "sqlite"      #table: "teams"      #primaryKey: "id"      #keyType: "int"      +incrementing: true      #with: []      #withCount: []      #perPage: 15      +exists: true      +wasRecentlyCreated: false      #attributes: array:8 [▶]      #original: array:8 [▼        "id" => "1"        "user_id" => "1"        "name" => "team1"        "description" => null        "join_request_needed" => "0"        "join_number" => "1574832472024"        "created_at" => "2019-11-27 05:27:52"        "updated_at" => "2019-11-27 22:46:55"      ]      #changes: []      #casts: []      #dates: []      #dateFormat: null      #appends: []      #dispatchesEvents: []      #observables: []      #relations: []      #touches: []      +timestamps: true      #hidden: []      #visible: []      #fillable: []    }  ]}这是我的整个功能(到目前为止只是粗略,因为我坚持获取数据):public function check() {    $data = request()->validate([        'email' => ['required', 'email'],        'team' => ['required', 'alpha_num', 'exists:teams,join_number']    ]);
查看完整描述

2 回答

?
繁星coding

TA贡献1797条经验 获得超4个赞

在您的情况下,Team 是 Teams 的集合,因此您可以使用 querybuilder 方法first()

$team = Team::where('join_number', '=', $data['team'])->first();

由于查询的工作方式,在查询生成器上调用 get 将始终返回一个集合。如果你想要单个对象first()或者find()是选项。


查看完整回答
反对 回复 2022-05-27
?
繁花不似锦

TA贡献1851条经验 获得超4个赞

Team由于您正在获取with的集合,因此join_number = $data['team'] 您需要先循环$team. 但是,如果您只想拥有一个具有 ajoin_number = $data['team']您应该做的 $teamfirst()而不是get()



查看完整回答
反对 回复 2022-05-27
  • 2 回答
  • 0 关注
  • 93 浏览

添加回答

举报

0/150
提交
取消
微信客服

购课补贴
联系客服咨询优惠详情

帮助反馈 APP下载

慕课网APP
您的移动学习伙伴

公众号

扫描二维码
关注慕课网微信公众号