Я хочу установить связь между постом и пользователем, чтобы таким образом можно было получать все посты $ user-> posts () и таким образом получать пользователя $ post-> user ()
Я сделал функцию ownTo, но мне нужен способ, чтобы, когда я получал пользователя, я мог как-то найти все его сообщения, также когда я получал сообщение, которое я использовал \ App \ Post :: find (1) -> user () -> name, returnНичего
Пост-модель
class Post extends Model
{
public function user() {
return $this->belongsTo('App\User',null,'userid');
}
}
Пост-структура БД
Schema::create('posts', function (Blueprint $table) {
$table->bigIncrements('id');
$table->string('title');
$table->longText('body');
$table->string('thumbnail');
$table->integer('views');
$table->integer('likes');
$table->bigInteger('userid');
$table->integer('categoryid');
$table->timestamps();
});
В пользовательской модели нет ничего, кроме значений по умолчанию, потому что у пользователя нет столбцов, которые ссылаются на посты
Структура БД пользователя - Laravel По умолчанию
Код Foreach:
@foreach(\App\Post::find(4)->user() as $user)
<p>{{$user->name}}</p>
@endforeach
Я ожидал, что получит имя пользователя, но оно не получилось ..