Я пытаюсь использовать paginate
при выборе данных из базы данных с помощью отношений. У меня есть три таблицы, а именно users
, contacts
и contact_messages
с моделямиUser
, Contact
, ContactMessage
соответственно.Как использовать paginate с отношениями в Laravel 5.2?
Я пытаюсь извлечь все сообщения от конкретного пользователя, используя следующий метод:
public function listMessage($user_id){
$user1 = User::find($user_id);
$messages = $user1->contact_messages;
return View::make('message.listmessage')
->with('user_id', $user_id)
->with('messages', $messages);
}
По этому методу я получаю все сообщения, но я не мог постраничной $messages
. Как я могу разбивать страницы на $messages
? Может ли кто-нибудь помочь?
Мои модели и отношения приведены ниже:
class User extends Authenticatable
{
public function contacts()
{
return $this->hasMany('App\Contact');
}
public function contact_messages()
{
return $this->hasManyThrough('App\ContactMessage', 'App\Contact');
}
}
и контакт Модель
class Contact extends Model
{
public function user(){
return $this->belongsTo('App\User');
}
public function messages()
{
return $this->hasMany('App\ContactMessage');
}
}
наконец ContactMessage модель
class ContactMessage extends Model
{
public function contact(){
return $this->belongsTo('App\Contact');
}
}
Большое спасибо. Он работает красиво – manoos