我正在尝试回复评论的所有者,如下所示,但它会出错。
尝试获取非对象的属性
$comments = ThingComment::where('thing_id', $id)>orderBy('comment_date', 'desc')->get();
刀片模板
@foreach($comments as $comment)
@foreach($comment->thingCommentOwner as $owner)
{{$owner->user_name}}
@endforeach
@endforeach
我有三个模型:User
,Thing
和ThingComment
事情可能并不重要,所以我没有包含它。
我的表格为:users
和thing_comment
user_id
和thing_id
是thing_comment表中的外键。我应该能够通过thing_comment表访问users表列,这就是我想在这里实现的。
模型如下。
ThingComment.php
<?php
namespace App\Models;
use Illuminate\Database\Eloquent\Model;
class ThingComment extends Model {
protected $table = 'thing_comment';
protected $primaryKey = 'comment_id';
protected $fillable = ['comment', 'comment_date', 'upvotes', 'downvotes', 'user_id', 'thing_id', 'parent_comment_id'];
public function thingCommentOwner() {
return $this->belongsTo('\App\Models\User','user_id');
}
public function commentThing() {
return $this->belongsTo('\App\Models\Thing','thing_id');
}
}
答案 0 :(得分:0)
他们需要像下面这样使用。 thingCommentOwner允许我们向用户表JUMP,这很酷。
@foreach($comments as $comment)
{{$comment->comment}}
{{$comment->thingCommentOwner->name}}
{{$comment->thingCommentOwner->user_image}}
<p></p>
@endforeach