Я использую Laravel 5.1. Короче говоря, у меня есть почтовая публикация, которая может иметь много версий: несколько черновиков и одну опубликованную версию. «Опубликованный» является собственностью почтовой версии. Итак, у меня есть две модели, один контроллер и вид:Как получить только одну строку из связанной модели в laravel 5.1?
Сообщение Модель:
class Post extends Model{
public function published(){
return $this->hasMany('App\PostVersion')->where('published', 1);
}
}
PostVersion Модель:
class PostVersion extends Model{
public function post(){
return $this->belogsTo('App\Post');
}
}
А вот мой контроллер:
class PostsController extends Controller{
public function index(){
// Only published version of all posts
$posts = Post::with('published')->get();
return view('posts.index', compact('posts'));
}
}
У меня опубликовано только одно сообщение о версии. Так что, когда $ сообщений повторяются, я хотел бы сделать что-то вроде этого:
$post->published->title
вместо
$post->published[0]->title
Как я могу сделать это?