Diskon 80% terbatas! Masukkan kupon "merdeka" di kelas apa saja

Kenapa komentar di satu forum berlaku di forum lainnya (Laravel 5.4)

Saya buat sistem komentar, tapi ketika saya komentar di forum 1, di forum yang ke 2 juga ada komentar saya yang sama di forum 1.. Apa salahnya di bagian Model,Table, atau saya pada saat looping nya salah.. Terima kasih. Bagian Model User:


class Forum extends Model
{
  public function user() {

     return $this->belongsTo('App\Models\User');

    }

  public function tags() {

    return $this->belongsToMany('App\Models\Tag');

    }

    public function comment() {

      return $this->belongsTo('App\Models\Comment');

      }

}

ForumController


    public function show($id)
    {
      $user    = User::first();
      $forum   = Forum::where('slug', $id)->first();
      $tags    = Tag::all();
      $comment = Comment::paginate(3);

      $tags2  = array();
      foreach ($tags as $tag) {
        $tags2[$tag->id] = $tag->name;
      }
      return view('forum/show')->withForum($forum)->withTags($tags2)->withUser($user)->withComments($comment);
    }

Bagian Model Comment

class Comment extends Model
{
  public function user() {

     return $this->belongsTo('App\Models\User');

    }

  public function forum() {

    return $this->belongsTo('App\Models\Forum');

    }

}

show.blade.php


     <div class="row">
       <div class="col m12">

         <div class="comment">
           <ul class="collection with-header">

             <li class="collection-header"> <h4> Komentar </h4> </li>
             <li class="collection-item avatar">
               @foreach ($comments as $comment)
                 <img src="{{ asset('storage/images/levi.gif')}}" class="left circle">
                 <span id="user" class="left">  {{ $comment->user->name }} </span>
                 <p> {{ $comment->comment }} </p>
               @endforeach

                  {{ $comments->links() }}

             @if(!Auth::guest())
               <form action="/comment/{{ $forum->id }}"id="comment-textarea" method="post">
                 <textarea name="comment"> </textarea>
                 <input id="btn-comment" type="submit" name="submit" value="Tulis komentar...">
                 {{ csrf_field() }}
               </form>
             @else

              <li class="collection-item avatar">Jika ingin berkomentar, <br> silahkan <a id="login_btn" href="/login">login</a> terlebih dahulu.</li>

              @endif
             </li>

           </ul>
          </div>

avatar reihanagamsk
@reihanagamsk

125 Kontribusi 41 Poin

Dipost 7 tahun yang lalu

1 Jawaban:

Hehehe.. udah berhasil gan, ternyata di bagian model forum harusnya "hasmany"(punya banyak) dan di model comment "belongsTo"(milik dari)..

Di frontend nya for loop :


 ($forum->comments as $comment)
  <span id="user" class="left">  {{ $comment->user->name }} </span>
  <p> {{ $comment->comment }} </p>

Hehehehe.. :D saya yang nanya malah saya yang jawab sendiri.. :x Gpp, mungkin temen" disini tau cara yang lainnya atau sekedar buat referensi.. hehe..

avatar reihanagamsk
@reihanagamsk

125 Kontribusi 41 Poin

Dipost 7 tahun yang lalu

Login untuk ikut Jawaban