我的控制器有問題并在其中獲取數據。我的問題是,當我像這樣讓我的團隊時:$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()
是選項。

繁花不似錦
TA貢獻1851條經驗 獲得超4個贊
Team
由于您正在獲取with的集合,因此join_number = $data['team']
您需要先循環$team
. 但是,如果您只想擁有一個具有 ajoin_number = $data['team']
您應該做的 $teamfirst()
而不是get()
- 2 回答
- 0 關注
- 86 瀏覽
添加回答
舉報
0/150
提交
取消