2016-09-25 3 views
-2

Database Table RelationshipLaravel viele zu viele Abrufen von Daten über Multi-Table

Was ich tat:

public function index(Request $request) 
{ 
    $company_feedback = $request->user()->company() 
    ->get()->pluck('id')- >toArray(); 

    $company = Company::whereIn('id',$company_feedback); 
    $feedback = $company->feedback; 

    return view('feedback.index', ['feedbacks' => $feedback]); 

} 

Durch eloquent Beziehung verwendet wird, wie Feedback-Daten von einem bestimmten Benutzer-ID abzurufen? Ich möchte Feedback-Daten anzeigen, die zur aktuellen Login-Benutzer-ID gehören. könnte jemand helfen? zeige mir, wie man den Code in der Index-Methode in der Feedback-Klasse schreibt.

+1

Lesen https://laravel.com/docs/5.3/eloquent-relationships. Es ist alles in den Dokumenten beantwortet. – ceejayoz

+0

Zeigen Sie uns Ihre Datenbankstruktur für die zugehörigen Tabellen, wenn Sie eine haben. – phaberest

+0

im Anhang über –

Antwort

0

Angenommen, Sie haben zwei Modelle User.php und Feedback.php

Wenn Sie alle Feedback von einem aktuellen Benutzer gegeben abrufen möchten

In Ihrem User.php

public function feedback() 
{ 
//assuming you have user_id column in feedback table 
return $this->hasMany("App\Feedback",'user_id'); 
} 

In Ihrem Controller // alle Rückmeldungen des aktuellen Benutzers

$feedbacks = Auth::user()->feedback; 
+0

Nein, meine Feedback-Tabelle gehört nicht direkt zur Benutzertabelle. –

+0

Erläutern Sie Ihre Frage, aus der alle Tabellen, die Sie Daten sammeln möchten – Vikash

+0

Ich möchte Daten aus Feedback sammeln, die Benutzer Tabelle gehören. Ich möchte Feedback-Daten zu einem aktuellen Benutzer-Login zeigen. Die Feedbackdaten wurden anonym eingefügt. –