Я хочу, чтобы показать пользователь самым поста и вот что я буду делать? .. Я стараюсь это в моем AppServiceProvider.php:Показать пользователь с большинством сообщений в Laravel 5
view()->composer('questions.side2', function($view){
$m = User::leftJoin('questions','users.id','=','questions.user_id')
->selectRaw('users.*, count(questions.user_id) AS total')
->groupBy('users.id')
->orderBy('total','DESC')
->skip(0)
->take(5)
->get();
$view->with('m', $users);
});
In My Вид сбоку :
@foreach($m as $user)
{{ $user->name }}
@endforeach
, но я до сих пор есть эта ошибка: Undefined переменной: м (Вид: C: \ WAMP \ WWW \ \ кв.кв ресурсы \ вид \ вопросы \ side.blade.php) (Вид: C: \ wamp \ www \ qq \ resources \ views \ questions \ side.blade.php)
ли проверить вас, если эта функция действительно называется? Если вы поместите 'dd ($ m);' перед '$ view-> с ('m', $ user),' что вы получаете? – Laerte
view() -> composer ('questions.side2', function ($ view) { \t \t \t $ m = Пользователь :: leftJoin ('questions', 'users.id', '=', 'questions.user_id ') \t \t \t \t -> selectRaw (' нас ERS *, граф (questions.user_id.) AS Всего ') \t \t \t \t -> группеПо (' users.id ') \t \t \t \t -> orderBy ('total', 'DESC') \t \t \t \t -> skip (0) \t \t \t \t -> взять (5) \t \t \t \t -> получить(); \t \t dd ($ m); $ view-> с ('m', $ users); }); Но такое же сообщение об ошибке .. –
Что происходит, так это то, что эта функция никогда не запускается. У вас есть метод 'show' в Controller? Что в нем? – Laerte