Postingan lainnya
Buku Ini Koding!
Baru!
Buku ini akan jadi teman perjalanan kamu belajar sampai dapat kerjaan di dunia programming!
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>
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..