Я не хочу, чтобы имя пользователя, создавшего собственный поток. Как Майкл сделал нить о еде. Так что на дне пищевой нитки должно быть имя Майкла.Как получить имя пользователя в каждом потоке (Laravel)?
Я написал код для этого, но на самом деле это не работает. Может быть, кто-то из вас может найти ошибку.
У меня есть две модели. Модель потока и модель пользователя.
модель резьбы:
<?php
namespace App\Models\Thread;
use Illuminate\Database\Eloquent\Model;
use App\User;
class Thread extends Model {
public $table = 'thread';
public $fillable = [
'thread',
'content',
'user_id'
];
public function userthread() {
return $this->belongsTo('User','user_id', 'id');
модель пользователя:
<?php
namespace App;
use ...
protected $table = 'users';
protected $fillable = ['name', 'email', 'password'];
protected $hidden = ['password', 'remember_token'];
public function threaduser() {
return $this->hasMany('App\Models\Thread\Thread','user_id', 'id');
}
}
и теперь метод контроллера, где я пытаюсь получить имя:
public function show($id)
{
$thread = Thread::query()->findOrFail($id);
$threaduser = Thread::where('user_id', Auth::user()->id)->with('userthread')->get();
return view('test.show', [
'thread' => $thread,
'threaduser' => $threaduser
]);
}
в моем HTML :
{{$threaduser->name}}
Сообщение об ошибке я получаю:
Не определено свойство: Осветить \ Database \ Eloquent \ Коллекция :: $ Имя (Вид: /var/www/laravel/logs/resources/views/test/show.blade. php)
Я надеюсь, что кто-то может мне помочь.
Я сделал, но теперь я получаю это сообщение об ошибке: Class 'Пользователь' не найден – ItzMe488
Я обновил свой ответ – oseintow
Я сделал, но теперь у меня такая же ошибка, как и раньше: Неопределенное свойство: Illuminate \ Database \ Eloquent \ Collection :: $ userthread (в моем html) – ItzMe488