Ich muss sicherstellen, dass, wenn der Benutzer Freundschaftsanfragen sendet und ein anderer Benutzer es akzeptiert, die Freundesliste für beide Benutzer geändert wird. Nicht nur für denjenigen, der die Anfrage akzeptiert hat. Das ist das Problem. Wenn der Benutzer die Freundschaftsanfrage annimmt, erscheint der Freund in seiner Freundesliste, aber nicht in der Freundesanfrage.Laravel. Zeige akzeptierte Freunde für beide Benutzer
Dies ist mein Controller-Funktion:
public function add($id) // Add friends
{
$friend = new Friend();
$friendId = User::where('id', $id)->first();
$friend->user_id = Auth::user()->id;
$friend->friend_id = $friendId->id;
$friend->save();
return redirect('/');
}
Freund
Zeigt fordertpublic function showRequests()
{
$requests = Friend::where('friend_id', '=', Auth::user()->id)->where('accepted', '=', 0)->get();
return view('users.friends.requests', compact('requests'));
}
Akzeptiert Freund Anfrage
public function accept($id)
{
$friend = Friend::where('id', $id)->first();
$friend->accepted = 1;
$friend->save();
return redirect()->back();
}
Freundesliste Zeigt
public function show()
{
$friends = Friend::where('friend_id', '=', Auth::user()->id)->where('accepted', '=', '1')->get();
return view('users.friends.show', compact('friends'));
}
Die Beziehungen. User.php:
public function friend()
{
return $this->hasMany('App\Friend');
}
Friend.php:
public function user()
{
return $this->belongsTo('App\User');
}
Taylor tatsächlich erwähnt dieses spezielle Beispiel auf GitHub Problem so ich wahrscheinlich mit dieser https://github.com/laravel/framework/issues/441 – ExoticChimp