2017-03-12 3 views
1

was ich versuche, hier zu tun ist, nach dem Einsetzen möchte ich ohne die Seite zu aktualisierenWie werden Daten angezeigt, die nach dem Einfügen von db aus angezeigt werden? [L5.2]

WEGE

Strecke :: Post ('Viewbook/die Daten in der gleichen Seite angezeigt werden { bookId} ',' CommentsController @ insertcomment ');

// gibt es {} BookID Ursache dieser http://localhost:8000/viewBook/1

CONTROLLER

public function insertcomment(Request $request) 
{ 

    $commenter = Auth::user()->id; 
    $comments = new Comments; 
    $comments->comment = $request->input('mycomment'); 
    $comments->commenter = $commenter; 
    $comments->save(); //insert success 

    //getting the data 
    $data=DB::table('comments') 
     ->select('comment') 
     ->get(); 
    return response()->json($data,true); 
} 

Antwort

0

Sie brauchen nicht erneut die Daten von DB zu bekommen, kehren gerade eingefügt Comment Objekt:

+0

danke für die Antwort :) Wie kann ich es anzeigen anzuzeigen? – donnah

+0

@donnah Wenn Sie es anzeigen möchten, ohne die Seite neu zu laden, verwenden Sie AJAX dafür. Laravel gibt ein JSON-Objekt zurück, mit dem Sie einfach den eingefügten Kommentar anzeigen können. –

0

In Ihrer Situation.

  1. In http://localhost:8000/viewBook/1. Sie sollten eine AJAX-Anfrage an Route :: post senden ('viewBook ​​/ {bookId}', 'CommentsController @ insertcomment');
  2. Dann erhalten Antwort vom Server für den aktuellen HTML-Abschnitt anfügen. Die Antwort wie @Alexey Mezenin Antwort
Verwandte Themen