Ankündigung

Einklappen
Keine Ankündigung bisher.

Laravel - Relationship, pagination, sortieren

Einklappen

Neue Werbung 2019

Einklappen
X
  • Filter
  • Zeit
  • Anzeigen
Alles löschen
neue Beiträge

  • Laravel - Relationship, pagination, sortieren

    Guten Morgen liebe Community,
    ich habe ein Problem und hoffe ihr könnt mir da einen kleinen Denkanstoß geben.

    Es geht um folgendes Problem: Ich habe table wo Daten aus der Datenbank ausgegeben werden. Versuche die Daten zu sortieren und auf 10 Einträge pro Seite zu begrenzen mit paginate. Das sortieren funktioniert wie ich es möchte, nur bekomme ich leider nicht das mit der paginate hin.

    Bekomme folgende Fehlermeldung:
    Method Illuminate\Database\Eloquent\Collection:aginate does not exist.

    folgendes habe ich schon versucht :

    UserbookmarkController
    PHP-Code:
    public function index()
    {
        
    $bookmarks User::find(Auth::user()->id)->bookmark->sortByDESC('created_at')->paginate(10);  
        return 
    view('user.bookmarks.index'compact('bookmarks'));

    PHP-Code:
    public function index()
    {
        
    $bookmarks User::paginate(10)->find(Auth::user()->id)->bookmark->sortByDESC('created_at');  
        return 
    view('user.bookmarks.index'compact('bookmarks'));

    Bei dieser Variante bekomme ich folgende Fehlermeldung:

    Previous exceptions
    • Method Illuminate\Database\Eloquent\Collection::links does not exist. (0)
    Die Paginate versuche ich aufzurufen wie folgt:

    PHP-Code:
      <div>{{ $bookmarks->links() }}</div

  • #2
    Was steht denn drin in $bookmarks? Und sollte es nicht heißen bookmarks, also ohne $?
    PHP-Code:
    {{dump(bookmarks)}} 

    Kommentar


    • #3
      PHP-Code:
      public function index()
      {
          
      $bookmarks User::find(Auth::user()->id)->bookmark()->sortByDESC('created_at')->paginate(10);  
          return 
      view('user.bookmarks.index'compact('bookmarks'));

      so wäre das korrekt.
      ->bookmark-> lädt dir schon alle Objekte aus der Datenbank, mit ->bookmark()-> erhälst du das Beziehungsobjekt und kannst das Query anpassen (z.B. mit der Pagination)

      Kommentar

      Lädt...
      X