Sergey
28.12.2016
13:05:19
у меня была такая же история на 5.2, не было времени искать решение, просто поднял supervisor и всё, так даже лучше.
есть конечна проблема в том что его сложно поднять на локальной машине, хотя если linux или mac, проблем не много. А так для тестирование в консоль php artisan queue:listen и он будет по послденго слушать соединение не прервывая его, хотя иногда через пару часов бывает падает, но не всегда.
Valery
28.12.2016
13:08:41
так тут проблема в том, что любая команда не пашет из шедулера, не только очереди
в крон вроде как прописал
а ты в крон как прописал?
типа этого * * * * * php /path/to/artisan schedule:run » /dev/null 2>&1
или запросом через http?
Google
Nikolay
28.12.2016
18:07:42
Как консольную утилиту
Потом ее же выполнин
И она работала
А из крона нет
У дебиан система
Просто слепо вставляли пример с сайта ларавела
глянул логи крона
Error: bad username; while reading /etc/cron.d/mtt-app-scheduler
* * * * * <USERNAME> <COMAND>
В доках нет имени пользователя, под которым запускается
поставил, все разработало)
Valery
29.12.2016
05:52:46
воно оно чё
Google
Nikolay
29.12.2016
06:03:48
Возможно есть разделение крона по пользователям
Но основной cron.d
рутовый так не работает
нужно указывать пользователя
Виктор
03.01.2017
10:10:00
Всем привет. С наступившим НГ! Кто знает, как заставить лару джойнить в один запрос все релейшены, которые хочу получить with(...), вместо отдельных select запросов?
Valery
03.01.2017
11:07:37
сократить количество запросов к базе?
Виктор
03.01.2017
11:16:21
да
Valery
03.01.2017
11:20:20
ну наверно не использовать отношения. только join, только хардкор )
Виктор
03.01.2017
11:28:46
ну да, эх)
Kirill
03.01.2017
16:51:11
Или кэшировать
Oleg
04.01.2017
19:37:08
Виктор
04.01.2017
19:40:43
Нет, не пойдет. Я к тому, что потом выхвтывать соответственно эти релейшены в коде
$user = User::with('role')->find(1);
получить соответственно
$user->role->name
одним запросом
Тут разбор идет по двум моделям, User и Role и соответственно Role попадет как релейшн в сущность User
Или речь о какой вьюшке? В контексте БД?
Oleg
04.01.2017
19:41:49
В контексте БД.
https://habrahabr.ru/post/47031/
Виктор
04.01.2017
19:42:32
ясно, ну можно и вьюшкой конечно, но тогда и данные о самой роли будут содержаться непосредственно в сущности User
Да, я понял о каких вьюхах речь))
Oleg
04.01.2017
19:43:16
А это не оно?
$users = DB::table('users')
->join('contacts', 'users.id', '=', 'contacts.user_id')
->join('orders', 'users.id', '=', 'orders.user_id')
->select('users.*', 'contacts.phone', 'orders.price')
->get();
Виктор
04.01.2017
20:02:46
Джойны само собой, конечно все за один запрос соберет, но в итоге это будет все в одной сущности (в одном массиве, коллекции). Да и это не релейшены
Google
Egor
05.01.2017
05:35:39
Кто знает, есть ли генераторы админок на php, подобие http://keystonejs.com ??
root
05.01.2017
06:04:53
Ребята всем здрям! Логику обязательно держать в моделе?
Контроллер для чего вообще?
Valery
05.01.2017
06:05:35
логику можно выносить в сервисы
root
05.01.2017
06:06:13
Что ещё за сервисы? Не знаю такого. Знаю файл с маршрутами, в котором указываешь контроллер для маршрута
Модель вообще не могу допереть для чего
С шаблонами слава Богу разобрался
Valery
05.01.2017
06:07:46
модель для описания таблицы в бд и её связей с другими таблицами
root
05.01.2017
06:08:12
Только для этого?
В контроллере я могу обраться к базе данных и передать потом данные в шаблон?
Valery
05.01.2017
06:12:39
ну если там что-то короткое, то, вроде бы, не воспрещается
https://laravel.com/docs/5.3/controllers#defining-controllers
root
05.01.2017
06:19:36
Я на 5.2 версии
Но обновлял проект до 5.3
Там есть изменения
По умолчанию при создании модели в ней уже прописано
use Illuminate\Database\Eloquent\Model;
В документации есть еще фасад DB
Подскажите какой из них лучше использовать?
Valery
05.01.2017
06:47:29
через дб можно использовать query builder без моделей или вообще чистые sql запросы
root
05.01.2017
06:48:24
т.е. я могу в контроллере добавить
use DB?
Nikolay
05.01.2017
06:48:53
Да
Google
root
05.01.2017
06:49:02
И не обращаться к моделе, получать данные из базы и передавать их шаблону
?
Это не нарушает логику Laravel?
Просто я новичок и хотелось с самого начала писать правильно
Еще хотел спросить оба фасада защищены от инъекций?
Nikolay
05.01.2017
06:52:13
Модели нужны
Чтобы не писать селектв к таблицам
Valery
05.01.2017
06:52:40
DB::unprepared('DELETE FROM users WHERE id=' . $request->input('id')); - не защищено
Nikolay
05.01.2017
06:52:46
А писать нормальный семантически обоснованный год
Код*
root
05.01.2017
06:53:24
Запутался
Млин сложно новичку осваивать фрейм
Valery
05.01.2017
06:54:30
посмотри на ютубе видосы обучающие, почитай статейки
root
05.01.2017
06:55:13
Смотрел уже. Предпочтительно использование моделей со стандартным фасадом
use Illuminate\Database\Eloquent\Model;
Все запросы в моделе которая возвращает $var с данными и передает её контроллеру, который её передаёт уже шаблону
Можно пример, чтобы внести ясность?
Valery
05.01.2017
06:57:34
чтобы код был короче и более человекопонятный
root
05.01.2017
06:58:16
Ок. Можно пример обращения к таблице пользователей с запросом на выбор всех пользователей
Из контроллера и из модели
Google
root
05.01.2017
06:58:40
Хотелось бы посмотреть какие отличия
Valery
05.01.2017
06:59:48
$users = User::all();
root
05.01.2017
07:00:01
Это в моделе насколько я понял
Valery
05.01.2017
07:00:17
нет. User - модель
это в контроллере
запрашиваем всех юзеров через соответствующую модель
root
05.01.2017
07:01:22
Значит в контроллере я еще дописываю путь к моделе User
use App\User;
Valery
05.01.2017
07:01:49
да, неймспейс
root
05.01.2017
07:02:57
Валерий у меня создан маршрут /calendar который обрабатывается CalendarController@index
Так же я создал через консоль php artisan make:model Calendar
Теперь в контроллере я дописываю use App\Calendar;
Valery
05.01.2017
07:04:07
а таблица-то в базе есть? calendars
root
05.01.2017
07:04:07
И пишу в контроллере запрос $calendar = Calendar::all();