These are chat archives for LaravelRUS/chat

14th
Aug 2015
My-Account
@My-Account
Aug 14 2015 05:08
Сразу извиняюсь за вопрос, читал искал, но конкретики не нашел. В чем именно разница между поддоменами и префиксами роутов? Вот смотрю и не могу до конца понять. Подскажите плиз.
Роман Сохарев
@greabock
Aug 14 2015 05:11
@My-Account
http://mysite.com/dashboard - префикс,
http://dashboard.mysite.com - поддомен
My-Account
@My-Account
Aug 14 2015 05:12
@greabock , коротко и понятно) Большое спасибо!
Andrey Fedotov
@protectedfor
Aug 14 2015 06:37
Всем привет такая задача: На сайте есть блок "Горячие предложения" в нем я хочу выводить некоторые отдельные записи из моделей. Есть модели: машина, квартира, дом..... Например я хочу чтобы в блоке горячих предложений выводился дом с id=3 и машина с id=5 и квартира с id=3. Я создал модель HotDeal, как мне теперь установить полиморфные связи между этими моделями?
projct1
@projct1
Aug 14 2015 06:53
как сохранять связи belongsToManey ?
Роман Сохарев
@greabock
Aug 14 2015 06:58
Maney нет такого слова ^_^
а вообще в доках все написано =)
Maksim Karpychev
@kodermax
Aug 14 2015 07:20
Ребята, а есть движок на laravel, чтобы инет-магазин сделать серьезный?
projct1
@projct1
Aug 14 2015 07:21
нету)
есть несколько пакетов, но это не то
Maksim Karpychev
@kodermax
Aug 14 2015 07:26
а что тогда symfony ?
sylius
Alexander Popov
@ruelephant
Aug 14 2015 07:27
я кстати перехожу на GO
прикольный компилируемый язык, с многопоточностью и статической типизацией
(с блекджеком и шлюхами)
Maksim Karpychev
@kodermax
Aug 14 2015 07:29
о как
а маркетплейс у него развит?
jongleb
@jongleb
Aug 14 2015 07:33
$ТестовоеСообщение='Hello,world!';
ништяк
Alexander Popov
@ruelephant
Aug 14 2015 07:35
@kodermax что ты имеешь введу под маркетплейс?
butschster
@butschster
Aug 14 2015 07:35
@kodermax ты все не уймешься? Ты же сказал что кучу CMS нашел и там нет интернет магазинов?!?!? Используй OpenCart, там все есть. А еще есть magento, тоже с исходниками, отличная вещь
jongleb
@jongleb
Aug 14 2015 07:36
Как Many to Many к одной таблице задействовать?
Palchik
@palchik1985
Aug 14 2015 07:37
никак
jongleb
@jongleb
Aug 14 2015 07:37
Не query билдером а ОРМ
аа жаль
Palchik
@palchik1985
Aug 14 2015 07:37
many to many = 3 таблицы. Это правильная структура
Olga Nikolaeva
@mrfeathers
Aug 14 2015 07:37
@jongleb к одно? может One to Many тогда?
jongleb
@jongleb
Aug 14 2015 07:37
Ну я имею ввиду A_id1 A_id2 в таблице B
Palchik
@palchik1985
Aug 14 2015 07:38
если повторяются значения в таблице - это значит надо задуматься что ее надо разбивать на несколько. Ибо если проект вырастет, потом запаришься с производительностью
jongleb
@jongleb
Aug 14 2015 07:39
Так наподобие друзей хранят в таблице ('User', 'friends_users', 'user_id', 'friend_id');//Копипаста с левого блога
Olga Nikolaeva
@mrfeathers
Aug 14 2015 07:39
А может мне кто-нибудь подсказать каким образом мне в реальном времени выводить пользователю количество отправленных имэйл, которые я отправляю в очереди.
Palchik
@palchik1985
Aug 14 2015 07:41
через аякс обновляй страницу
Olga Nikolaeva
@mrfeathers
Aug 14 2015 07:41
это то понятно, что через аяксом
Palchik
@palchik1985
Aug 14 2015 07:41
ну. А в чем вопрос
Olga Nikolaeva
@mrfeathers
Aug 14 2015 07:41
я о том, как мне узнавать из очереди, что сообщение уже отправлено
Palchik
@palchik1985
Aug 14 2015 07:41
пиши в бд
при отправке статус какой-то
и проверяй аяксом наличие в бд записи
Olga Nikolaeva
@mrfeathers
Aug 14 2015 07:44
есть таблица jobs, туда по идее записываются все, что было запущено в очередь. Окей, если оттуда брать (очередь как я поняла возвращает id, который как раз в базу и записывается), то скрипт мне нужно запускать периодически, кроном например
или я несу чушь?
Maksim Karpychev
@kodermax
Aug 14 2015 07:51
@butschster магенто я пробовал, это какой-то ужас, тяжелая, да плюс еще нет стандартной функцией удалить выделенные товары и разделы, ну это конечно отстой был
butschster
@butschster
Aug 14 2015 07:52
@kodermax короче я понял, ты зануда
Maksim Karpychev
@kodermax
Aug 14 2015 07:53
@butschster не отрицаю
Roman Tsiupa
@dracony
Aug 14 2015 08:03
@butschster что будет с коди, когда вийдет та цмс от ларавелки что тейлор обещал ?
butschster
@butschster
Aug 14 2015 08:04
@dracony они объединятся
tema-proximo
@tema-proximo
Aug 14 2015 08:12
Всем привет. Есть какой-нибудь способ сохранения данных в форме, после того как она не прошла валидацию, кроме запихивания всего этого в сессию перед валидацией и доставания потом оттуда?
Andrey Fedotov
@protectedfor
Aug 14 2015 08:16
@greabock Что-то у меня никак не получается, связи один-к-одному я устанавливать умею. Можешь привести пример? Мне нужно получить список всех записей из модели HotDeal и затем когда я буду через foreach выводить все записи, определить какая конкретная модель ко мне приходит на каждой итерации и в зависимости от модели которая пришла выводить разные атрибуты.
Maxim
@Big-Shark
Aug 14 2015 08:17
@tema-proximo а ты какой хочешь? можно и в файл писать, но по умолчанию, такого нет
@protectedfor и в чем проблемма?
Andrey Fedotov
@protectedfor
Aug 14 2015 08:18
@Big-Shark, вот моя задача, которую я описывал выше: На сайте есть блок "Горячие предложения" в нем я хочу выводить некоторые отдельные записи из моделей. Есть модели: машина, квартира, дом..... Например я хочу чтобы в блоке горячих предложений выводился дом с id=3 и машина с id=5 и квартира с id=3. Я создал модель HotDeal, как мне теперь установить полиморфные связи между этими моделями?
tema-proximo
@tema-proximo
Aug 14 2015 08:18
@Big-Shark я хотел готовое решение)
Maxim
@Big-Shark
Aug 14 2015 08:19
@tema-proximo все хотят готовые решения)
tema-proximo
@tema-proximo
Aug 14 2015 08:19
@Big-Shark дофига форм просто и везде надо приделать эту фичу
Maxim
@Big-Shark
Aug 14 2015 08:20
@tema-proximo а нафига тебе такая фича?
projct1
@projct1
Aug 14 2015 08:20

подскажите, когда я достаю модель с рилейшеном, то как мне рилейшн сразу к нужному виду привести? например:

$result = $model->with('category')->first();

чтобы потом отдельно не делать так:

$result->keys('id')->toArray();
Maxim
@Big-Shark
Aug 14 2015 08:20
@protectedfor омг, и ты хочешь чтобы это было еще и в 1 запрос?
projct1
@projct1
Aug 14 2015 08:20
поправка
$result->category->keys('id')->toArray();
Maxim
@Big-Shark
Aug 14 2015 08:21
@rorc нельзя так сделать по умолчанию, вроде
Andrey Fedotov
@protectedfor
Aug 14 2015 08:22
@Big-Shark мне не важно как это будет реализовано, главное чтобы было логично и кратко. Что можешь посоветовать?
projct1
@projct1
Aug 14 2015 08:22
нашёл вроде, через калбак, что логично)
$users = User::with(['posts' => function($query)
{
    $query->where('title', 'like', '%первое%');
}])->get();
Andrey Fedotov
@protectedfor
Aug 14 2015 08:22
@Big-Shark какую структура бд сделать для таблицы hot_deals и какие связи установить между моделями?
Maxim
@Big-Shark
Aug 14 2015 08:24
@rorc так это только фильтрация, а тебе же насколько я понимаю нужно чтобы ключем был ид
projct1
@projct1
Aug 14 2015 08:24
@Big-Shark хотя да, тут тока запрос фильтровать
Maxim
@Big-Shark
Aug 14 2015 08:24
@protectedfor делаешь обычную полиморфную таблицу, и все
Andrey Fedotov
@protectedfor
Aug 14 2015 08:25
@Big-Shark ок
tema-proximo
@tema-proximo
Aug 14 2015 08:25
@Big-Shark заказчик хочет, а я не спорю. формы довольно большие, обидно когда заполняешь а из-за одной ошибки все сбрасывается)
Andrey Fedotov
@protectedfor
Aug 14 2015 08:27
@Big-Shark я немного не соображу в какой модели надо прописывать morphTo а в какой morphOne?
Maxim
@Big-Shark
Aug 14 2015 08:27
@tema-proximo так почему она сбрасывается, ты же через сесии все обратно прокидываешь
tema-proximo
@tema-proximo
Aug 14 2015 08:28
@Big-Shark мне это еще предстоит сделать) вот я и интересовался, может какое-нибудь готовое решение есть))
Maxim
@Big-Shark
Aug 14 2015 08:29
@tema-proximo так готовое решение и есть через сессии
Paul Klementyev
@klermonte
Aug 14 2015 08:30
@tema-proximo юзай FormBuilder
Maxim
@Big-Shark
Aug 14 2015 08:30
@protectedfor у той модели которая принадлежит к другим $this->morphTo(); это будет в хотдеалс
@klermonte @tema-proximo или формер)
Paul Klementyev
@klermonte
Aug 14 2015 08:31
@Big-Shark линк
Andrey Fedotov
@protectedfor
Aug 14 2015 08:36
@Big-Shark ок, сделал. Теперь у меня в базе есть 2 поля: product_id туда записывается id из связываемой модели и product_type туда приходит что-то типа: App\Models\Flats\Flat. Теперь, как мне использовать эти записи? Например мне нужно вывести список всех горячих предложений. Я получаю все записи: $hotDeals = HotDeal::all(); Затем как мне определить что это, например, машина и вывести атрибуты из таблицы cars?
Artur Gafurov
@assurrussa
Aug 14 2015 08:37
Привет, всем кто нить сталкивался с тем что сервер не отправляет письма на mail? на yandex, gmail отправляются.
Maxim
@Big-Shark
Aug 14 2015 08:38
@protectedfor ну у тебя как связь называется в хот диалс?
@protectedfor ты так и вызывай потом ->product
Andrey Fedotov
@protectedfor
Aug 14 2015 08:48
@Big-Shark как узнать тип модели, который пришел в $product->product. Например на первой итерации ко мне приходит модель House на второй Car.
Paul Klementyev
@klermonte
Aug 14 2015 08:48
@rorc
$result->category->pluck('title', 'id');
Maxim
@Big-Shark
Aug 14 2015 08:48
@protectedfor ну как минимум get_class
ну или instanceof
Paul Klementyev
@klermonte
Aug 14 2015 08:48
@rorc если у тебя в category конечно коллекция, а не одна модель
projct1
@projct1
Aug 14 2015 08:49
@klermonte мне надо просто массив айдишек получить
Artur Gafurov
@assurrussa
Aug 14 2015 08:50
@rorc $coll->lists('id') > ?
Andrey Fedotov
@protectedfor
Aug 14 2015 08:52
@Big-Shark большое спасибо. Все получилось, самому смешно, как я на такой элементарной логике зациклился. Отдыхать видимо надо.
projct1
@projct1
Aug 14 2015 08:52
@assurrussa да, точно, то что надо, спасиб
tema-proximo
@tema-proximo
Aug 14 2015 08:58
@Big-Shark ничеси, прикольная штука, спасибо
jongleb
@jongleb
Aug 14 2015 08:59
Лучший способ в апи для мобильного приложения авторизацию сделать на ларавел это череез корс?
projct1
@projct1
Aug 14 2015 09:01

почему когда к конкретной модели (с айдишкой 2 например) пытаюсь рилейшн добавить, всё рушится?

$model->with('category')->get()

теперь тут все модели

khadia
@khadia
Aug 14 2015 09:05
Здравстуйте, может и нубский вопрос, но все же как в laravel реализовать подобные запросы$sql = "SELECT `category_id`, `title` FROM `category` WHERE `category_id` = (SELECT `parent_id` FROM `category` WHERE `category_id` = $id) UNION SELECT `category_id`, `title` FROM `category` WHERE `category_id` = $id"
Paul Klementyev
@klermonte
Aug 14 2015 09:07
@rorc потому, что with() возвращает квери билдер, а чтобы получить релейшн конкретной модели нужно всего лишь сделать так $model->category
projct1
@projct1
Aug 14 2015 09:08
@klermonte точно, спасибо))))
Olga Nikolaeva
@mrfeathers
Aug 14 2015 09:08
Я видимо, не совсем понимаю как работают очереди. Все команды отправленные в очередь не будут исполняться пока я в консоли не введу php artisan queue:listen ?
Paul Klementyev
@klermonte
Aug 14 2015 09:08
@MrFeathers да
projct1
@projct1
Aug 14 2015 09:09
@klermonte получается по умолчанию все рилейшены подгружаются к модели?
@klermonte когда я модель по айдишке получил нрапример
Paul Klementyev
@klermonte
Aug 14 2015 09:10
@rorc нет, вызов $model->category приведет к выполнению отдельного запроса, если ты получал $model без with('category')
Olga Nikolaeva
@mrfeathers
Aug 14 2015 09:10
@klermonte спасибо! А я могу как-то отловить выполнение задач в очереди в коде?
Paul Klementyev
@klermonte
Aug 14 2015 09:10
@MrFeathers для дебага можешь использовать sync драйвер очереди, тогда задача будет выполняться тут же при ее постановке в потоке приложения
Olga Nikolaeva
@mrfeathers
Aug 14 2015 09:11
@klermonte нет, это мне как раз не нужно, мне нужно просто выводить пользователю сколько задач было выполнено, когда они выполняться
Paul Klementyev
@klermonte
Aug 14 2015 09:12
@MrFeathers ну тут много вариантов, просто в конце выполнения джобы инкрементируй какой-нит счетчик, например в редисе
projct1
@projct1
Aug 14 2015 09:13
@klermonte кстати, attach надо делать когда создаёшь тока запись, а потом sync когда апдейтишь, верно? тока в этом разница?
Olga Nikolaeva
@mrfeathers
Aug 14 2015 09:13
@klermonte я даже не знаю что такое редис, а какие еще есть способы? Опрашивать таблицу jobs в бд по крону, например?
Paul Klementyev
@klermonte
Aug 14 2015 09:14
@MrFeathers ну тогда в базе поле обновляй, разницы никакой, да хоть файл перезаписывай
@MrFeathers если используешь beanstalk, то у него есть апи получения статуса очереди, сколько задачь в каждом из статусов
Olga Nikolaeva
@mrfeathers
Aug 14 2015 09:15
@klermonte нет, использую database
Paul Klementyev
@klermonte
Aug 14 2015 09:16
@MrFeathers тогда может быть запрос сделать? не?
Olga Nikolaeva
@mrfeathers
Aug 14 2015 09:16
@klermonte ну вот о чем я и говорила, запрос к таблице jobs
Maxim
@Big-Shark
Aug 14 2015 09:16
@khadia через квери билдер вроде можно реализовать без особых проблем
projct1
@projct1
Aug 14 2015 09:17
@klermonte правильно я делаю? или по-другому можно ещё?
$this->model->create($this->request->all());
$this->model->category()->sync($this->request->get('category'));
Paul Klementyev
@klermonte
Aug 14 2015 09:17
@rorc больше стрелочек для бога стрелочек!
jongleb
@jongleb
Aug 14 2015 09:22
Реализована ли в Laravel возможность встроенных циклов на создание элементов из массива?
Olga Nikolaeva
@mrfeathers
Aug 14 2015 09:23
@klermonte в общем большое спасибо, очень помогли!
jongleb
@jongleb
Aug 14 2015 09:23
или руками в форичи спамить
Paul Klementyev
@klermonte
Aug 14 2015 09:24
@MrFeathers на здоровье, обращайся)
@jongleb что ты имеешь в виду?
jongleb
@jongleb
Aug 14 2015 09:27
Пришли айтемы с формы (массив например для таблиц А) их в форичи перебирать типа $itemA=new A()..save
или есть готовая реализация в ОРМ
@klermonte
Paul Klementyev
@klermonte
Aug 14 2015 09:30
@jongleb учитывая то, что тебе необходимо каждый подмассив валидировать отдельно, то да, иного способа как через форич обходить их, валидировать и сохранять я не вижу. Готовой обертки для этого я не встречал
jongleb
@jongleb
Aug 14 2015 09:33
@klermonte Спасибо! И можно еще вопрос, Лист со связями тоже брать нельзя?то есть не find(id)->blabla а All
projct1
@projct1
Aug 14 2015 09:34
@klermonte ?
Paul Klementyev
@klermonte
Aug 14 2015 09:35
@jongleb если ты получаешь коллекцию моделей, то можно массово для них загрузить релейшены. Например $users = User::with(['profile', 'emails'])->get() у каждого юзера уже будет профиль и емейлы в соответствующих полях объкта
jongleb
@jongleb
Aug 14 2015 09:36
@klermonte
ВО класс!
я как раз об этом
Массово речь идет не о цикле же?
Paul Klementyev
@klermonte
Aug 14 2015 09:37
@jongleb почитай поподробнее документацию, там все это есть http://laravel.com/docs/5.1/eloquent-relationships
@jongleb нет, не о цикле, а о методе with()
jongleb
@jongleb
Aug 14 2015 09:37
Круто тогда
Paul Klementyev
@klermonte
Aug 14 2015 09:38
@jongleb это при условии, что у тебя настроены соответсвующие релейшны в модели
jongleb
@jongleb
Aug 14 2015 09:42
@klermonte Речь о hasMany и BelongsTo?
Хотя нет стоп они ведь для функции конкретной
Paul Klementyev
@klermonte
Aug 14 2015 09:43
@jongleb ну у тебя свои какие-то связи, я же не знаю конкретного типа
Qweqwe1234
@Qweqwe1234
Aug 14 2015 09:50
Всем доброго времени суток, возник такой вопрос: Если я хочу что бы при попытке написать статью не аутентифицировавшись меня не перебрасывало на страницу аутентификации, а всплывало модальное окно на подобии этого http://getbootstrap.com/javascript/#live-demo мне свою middleware для этого писать, или вполне нормально будет отредактировать стандартную? Так же интересует как же это все-таки реализовать. Первые мысли были в лоб, то есть при переходе на страницу создания статьи мы попадаем в middleware и далее нам нужно редиректнуть назад и отобразить окошко и после того как залогинились перейти на ранее запрошенную страницу. Но возможно лучшим решением будет оставить все как есть и при нажатии на ссылку создания статьи запускать скрипт с проверкой залогинились или нет и либо вызывать это окошко либо сразу переходить по адресу, но тогда получается придется делать такие проверки везде.
Одним словом помогите пожалуйста разобраться как все это грамотнее организовать, я запутался
Paul Klementyev
@klermonte
Aug 14 2015 09:54
@Qweqwe1234 "Человек если и учится, то только на собственных ошибках. Он должен на своем опыте постичь меру добра и зла, научиться отвечать за свои поступки, а не придумывать для себя оправдания." (с) кто-то
Qweqwe1234
@Qweqwe1234
Aug 14 2015 09:55
@klermonte С этим полностью согласен, не раз испытано, но что бы ускорить процесс создания ошибок и их осознания лучше знать в каком направлении двигаться
@klermonte Другими словами, делать через middleware(переписывая стандартную или создавать свою?) и правильно ли я понимаю как это через нее реализовывать, или же скриптами делать, тк по сути мне при попытке создания статьи не нужен переход до того пока пользователь не аутентифицирован
butschster
@butschster
Aug 14 2015 09:58
@Qweqwe1234 не понимаю зачем здесь middleware, просто передавать в JS статус авторизации и через него проверять, если авторизован то не показывать, в противном случае показывать окно авторизации. При сохранении статьи уже использовать middleware чтобы неавторизованный не мог ее запостить
Qweqwe1234
@Qweqwe1234
Aug 14 2015 10:00
@butschster Благодарю, примерно об этом же и начал задумываться, но еще в процессе продумывания как это сделать
butschster
@butschster
Aug 14 2015 10:01
только авторизация через popup тоже имеет минусы
если ты через ajax будешь делать авторизацию то в запросе может фигурировать пароль пользователя и его можно подсмотреть
Qweqwe1234
@Qweqwe1234
Aug 14 2015 10:01
@butschster получается этот скрипт придется вешать на все те элементы которые должны быть доступны только аутентифицированным пользователям?
@butschster Об этом я и не подумал...
я окончательно запутался. По идее можно организовать через обычный пост, но как в таком случаи дать понять куда после него нужно переходить. Насколько я понимаю это возможно, и просто нужно еще раз покапаться в контроллере стандартной аутентификации. Другой вопрос в том что я пока и с https аутентификацией в принципе не разобрался, или как все-таки ее шифровать?
butschster
@butschster
Aug 14 2015 10:13
@Qweqwe1234 referrer
Qweqwe1234
@Qweqwe1234
Aug 14 2015 10:22
@butschster Благодарю, пойду дальше мучать
projct1
@projct1
Aug 14 2015 10:23
кто-нибудь знает плагин, чтобы из select2 сделать древовидный селект?
projct1
@projct1
Aug 14 2015 11:33
есть мутатор setParamAttribute при сохранении работает, а есть обрратный? например хочу чтобы при получении данных, определённое поле пропускалось через функцию?
Andrey Fedotov
@protectedfor
Aug 14 2015 11:44
@rorc getParamAttribute
projct1
@projct1
Aug 14 2015 11:47
@protectedfor да, тупанул)
кстати как сохранять чекбоксы? если галка снята, то даже мутатор не запускается, так как в переданных параметрах нет его
projct1
@projct1
Aug 14 2015 11:54
неужели единственное решение это скрытый инпут создавать?
{{ Form::hidden('is_active', 0) }}
{{ Form::checkbox('is_active') }}
Maksim (Ellrion) Platonov
@Ellrion
Aug 14 2015 11:56
@rorc я предпочитаю предподготавливать данные в форм реквесте
фронтедщику тогда нет нужды заморачиваться с передачей, не его это забота
projct1
@projct1
Aug 14 2015 11:58
@Ellrion странно конечно, в fillable если есть поле, почему бы мутатор не отработать, в котором уже и к нулю привести например
Maksim (Ellrion) Platonov
@Ellrion
Aug 14 2015 11:59
@rorc потому что мутатор тупо не вызовется, когда ты заполняешь модель данными из реквеста, то в реквесте просто нет этого поля
projct1
@projct1
Aug 14 2015 12:00
@Ellrion ну я к тому, что всё наоборот должно быть, исходить от fillable, а потом уже на реквест смотреть
Maksim (Ellrion) Platonov
@Ellrion
Aug 14 2015 12:01
@rorc ноуп. fillable просто говорит какие поля МОЖНО заполнять массово и все
projct1
@projct1
Aug 14 2015 12:01
ок
Maksim (Ellrion) Platonov
@Ellrion
Aug 14 2015 12:02
у него другая цель, защита некоторых полей от несанкционированного заполнения
projct1
@projct1
Aug 14 2015 12:02
да
Krafft-rus
@Krafft-rus
Aug 14 2015 12:19
Может кто подскажет. Есть таблица фоток, столбцы id и name. Таблица рейтинга фоток, столбцы id_foto фотки и id_user Ну и таблица пользователей. Задача вывести случайную фотку за которую пользователь еще не голосовал, как это можно реализовать?
Maksim (Ellrion) Platonov
@Ellrion
Aug 14 2015 12:43
@Krafft-rus не уверен что сработает но попробуй как то так
Photos::doesntHave('users', 'and', function ($query) use($user) {
    $query->where('id',  $user->id);
})->get();
ну или тупо двумя запросами, с выборкой сначало связанных залайканых а потом not in (список)
xtwist
@xtwist
Aug 14 2015 12:45
@Krafft-rus SELECT id, name FROM photos WHERE id_foto NOT IN (SELECT все голосования пользователя)
Andrey
@Quiss
Aug 14 2015 13:13
[16:10:35] HR: у тя знакомые джависты етсь?
[16:10:39] Andrey Sokolov: JAVA ?
[16:10:41] HR: ага
[16:10:46] Andrey Sokolov: на кой java ?
[16:11:06] HR: мне нужен архитектор
[16:11:16] HR: точнее моим знакомым
[16:11:21] HR: на серьезный проект
[16:11:32] Andrey Sokolov: сча посмотрю кто есть свободный
[16:12:05] HR: белая контора, доработка и внедрение федеральной судебной системы документооборота
[16:12:23] HR: архитектор или лид
[16:12:30] HR: описание могу скинуть
[16:12:41] HR: 180-200 на руки белая зп
ребят требуется помощь мб кто есть
Москва.
Krafft-rus
@Krafft-rus
Aug 14 2015 13:18
Спасибо, разобрался.
Alexey
@Butochnikov
Aug 14 2015 13:57
кто подскажет, зачем вот это в инсталлере у лары? https://github.com/laravel/installer/blob/master/zipper.sh
Maxim
@Big-Shark
Aug 14 2015 13:58
@Butochnikov для инсталяции, ваш кэп
Alexey
@Butochnikov
Aug 14 2015 13:58
@Big-Shark как я понял за инсталл там другое отвечает
Maxim
@Big-Shark
Aug 14 2015 14:02
@Butochnikov вроде как вначале был sh, а потом пхп
Alexey
@Butochnikov
Aug 14 2015 14:03
@Big-Shark т.е. это старый вариант, хочешь сказать?
но все равно странный... сначала скачивает, устанавливает, а потом опять архив
Dmitry
@13bit
Aug 14 2015 14:05
Ребят, подскажите, такая проблема, после перехода компьютера в ждущий решим сайт на homestead не коннектится, хоть виртуалка работает и по ssh все ок. Запускаю на Ubuntu 15.04, чтобы снова заработало нужно систему перезагружать
может было у кого такое?
Maxim
@Big-Shark
Aug 14 2015 14:06
@Butochnikov laravel/installer@67d23b8
Alexey
@Butochnikov
Aug 14 2015 14:09
походу это нужно тейлору чтобы получать архивчик лары с вендорами, может для его сервисов
Maxim
@Big-Shark
Aug 14 2015 14:10
@Butochnikov я понял)
Alexey
@Butochnikov
Aug 14 2015 14:11
@Big-Shark ?
Maxim
@Big-Shark
Aug 14 2015 14:12
@Butochnikov http://cabinet.laravel.com/latest.zip он качает вот этот файл, но как это файл создается)
@Butochnikov да очень просто, через тот зиппер, только вот почемуто тут он назыается latest.zip а там laravel-craft.zip
@Butochnikov но возможно он отдает его через пыху, или нджинкс просто
Maxim
@Big-Shark
Aug 14 2015 14:18
@Butochnikov андерстенд?
Alexey
@Butochnikov
Aug 14 2015 14:21
возможно и так, но зачем это запихивать в инсталлер? если это только для cabinet.laravel
Maxim
@Big-Shark
Aug 14 2015 14:22
@Butochnikov а это уже другой вопрос, возможно там какието хуки на всем этом, ну и не делать же отдельный реп под него)
Alexey
@Butochnikov
Aug 14 2015 14:27
@Big-Shark короче, для инсталлера, как такового, он не нужен.
Maxim
@Big-Shark
Aug 14 2015 14:28
@Butochnikov угу
@Butochnikov в чем вообще прикол инсталера?
Alexey
@Butochnikov
Aug 14 2015 14:33
@Big-Shark ты о чем? удобно пишешь laravel new mysuperapp и готово )
Maxim
@Big-Shark
Aug 14 2015 14:33
@Butochnikov ну так то да, только я вот пишу composer create-project laravel/laravel test-laravel-5-and-propel2 --prefer-dist и готово)
Alexey
@Butochnikov
Aug 14 2015 14:34
@Big-Shark )) так букв меньше
Maxim
@Big-Shark
Aug 14 2015 14:38
@Butochnikov так я же не пишу это, я копирую)
Alexey
@Butochnikov
Aug 14 2015 14:39
т.е. для того, чтобы скопировать, это что-то нужно еще и открыть )
Maxim
@Big-Shark
Aug 14 2015 14:40
@Butochnikov "ой все" )))
projct1
@projct1
Aug 14 2015 14:40
модскажите) модель наследуется от другой модели, где прописано много полей в fillable, чтобы не дублировать весь массив, как можно унаследовать все поля + добавить парочку?
Походу они накуреные писали это)
@rorc нельзя так
projct1
@projct1
Aug 14 2015 14:42
пробовал так:
class Product extends BaseCatalog
{
    protected $table = 'shop_product';

    public function getFillable()
    {
        return $this->fillable + ['price'];
    }
}
в BaseCatalog много полей в fillable
@Big-Shark 100% уверен?
Paul Klementyev
@klermonte
Aug 14 2015 14:42
@rorc array_merge()
в буте
Maxim
@Big-Shark
Aug 14 2015 14:43
@rorc ну это же переменная, ее нельзя изменять при присвоении, и наследовать, но в теории в конструкторе можно получить ее у парента, заменить, и установить)
projct1
@projct1
Aug 14 2015 14:44
@klermonte где?
@Big-Shark ну правильно было б когда ларавел получает fillable он обращался не к свойству а к методу, следовательно легко было б переназначить и манипулировать как хочешь
но почему-то ларавель не так делает (
Maxim
@Big-Shark
Aug 14 2015 14:45
@rorc пулл реквест, и вперед
maffiozimobile
@maffiozimobile
Aug 14 2015 14:49
курю мануал и не могу понять, что бы определить меременную во все шаблоны на создать сервис провайдер, дальше в него класс записахть или нет? кто пояснит, че с провайдером сделать что бы результат метода класса передавался во все шаблоны
Paul Klementyev
@klermonte
Aug 14 2015 14:50

@rorc
В Product

public function boot()
{
    parent::boot();
    $this->fillable(array_merge($this->getBaseFillable, $this->fillable));
}

В BaseCatalog

public function getBaseFillable()
{
    return [
        'fieldName',
        'secondFieldName',
        ...
    ];
}
projct1
@projct1
Aug 14 2015 14:51
@klermonte чё т сложно как-то
@klermonte boot статический метод и в нём $this нельзя
Paul Klementyev
@klermonte
Aug 14 2015 14:52
@rorc упс, ну тогда трейт
хотя тоже не прокатит, bootTraits тоже только один раз вызывается для каждого класса
@rorc Тогда да, как @Big-Shark предложил, в конструкторе
projct1
@projct1
Aug 14 2015 14:56
@klermonte не пашет ((
Paul Klementyev
@klermonte
Aug 14 2015 14:56

@rorc
В Product

public function __construct($attributes = [])
{
    parent::__construct($attributes)
    $this->fillable(array_merge($this->getBaseFillable, $this->fillable));
}

В BaseCatalog

public function getBaseFillable()
{
    return [
        'fieldName',
        'secondFieldName',
        ...
    ];
}
projct1
@projct1
Aug 14 2015 14:56
    public function __construct()
    {
        parent::__construct();

        $this->fillable(array_merge($this->fillable, ['price']));
    }
SQLSTATE[23000]: Integrity constraint violation: 1062 Duplicate entry '' for key 'shop_product_slug_unique' (SQL: insert into `shop_product` (`updated_at`, `created_at`) values (2015-08-14 14:56:32, 2015-08-14 14:56:32))
пустые поля записываются
атрибуты не передавал)
всё равно цену не сохраняет
Paul Klementyev
@klermonte
Aug 14 2015 15:00
ты читать умеешь? у тебя ж ошибка написана, пустой слуг дублируется
JhaoDa
@jhaoda
Aug 14 2015 15:00
Читать логи и ошибки — для лохов!
Paul Klementyev
@klermonte
Aug 14 2015 15:00
а, ну еще поменяй местам в конструкторе строчки, если ты модель через new Model([...]) создаешь
projct1
@projct1
Aug 14 2015 15:00
@klermonte да я понял это, атрибуты в конструктор не передавал, цена ща не сохраняется всё равно
Paul Klementyev
@klermonte
Aug 14 2015 15:01
public function __construct($attributes = [])
{
    $this->fillable(array_merge($this->getBaseFillable, $this->fillable));
    parent::__construct($attributes);
}
projct1
@projct1
Aug 14 2015 15:01
@klermonte работает, спс
    public function __construct($attributes = [])
    {
        $this->fillable[] = 'price';
        parent::__construct($attributes);
    }
JhaoDa
@jhaoda
Aug 14 2015 15:05
И вы 20 минут это выясняли?
@rorc парень, может доку по РНР начать читать?
Paul Klementyev
@klermonte
Aug 14 2015 15:05
@rorc скажи, как давно ты программируешь? меня смущают твои вечно элементарные вопросы
projct1
@projct1
Aug 14 2015 15:05
@jhaoda снова ты за своё))
JhaoDa
@jhaoda
Aug 14 2015 15:06
Да он не программирует, он кнопки нажимает, без понимания сути процесса
projct1
@projct1
Aug 14 2015 15:06
@klermonte года 3))
Paul Klementyev
@klermonte
Aug 14 2015 15:06
@rorc и в чем же заключалось твое "программирование"?
Просто у меня такой же опыт примерно
projct1
@projct1
Aug 14 2015 15:07
@klermonte с ларавелем недели 2-3 тока ещё не вник
JhaoDa
@jhaoda
Aug 14 2015 15:07
@klermonte мне прям стыдно становится, глядя на тебя. Я бы написал не «смущают», а «да я ажуеваю с таких вопросов» :)
@rorc $this->fillable[] = 'price'; это фишка ларавель, да?
projct1
@projct1
Aug 14 2015 15:08
@jhaoda не волнуйся, всё будет хорошо))
@jhaoda вопрос был изначально другой, читай выше
Dmitry
@13bit
Aug 14 2015 15:23
c broadcasting в L5.1 работал кто-то?
projct1
@projct1
Aug 14 2015 15:23
кстати если у меня коппеек не предусматривается в магазе, то мне необязательно же в decimal хранить цены? цены тока целыми числоами у меня могут быть
Alexey
@greal
Aug 14 2015 15:25
@rorc я бы советовал хранить в decimal. сегодня их нет, а завтра появятся.
projct1
@projct1
Aug 14 2015 15:27
@greal ну всё равно без потерь потом можно изменить поля
Paul Klementyev
@klermonte
Aug 14 2015 15:32
@rorc в любом случае потом это будет дополнительный гемор
@jhaoda считай что я играю доброго полицейского, а ты злого:D
@13bit что тебя интересует?
Alexey
@greal
Aug 14 2015 15:34
@rorc смотри сам, я бы сразу создавал правильные структуры данных
Dmitry
@13bit
Aug 14 2015 15:34
@klermonte как разделить пользователей, у меня сейчас 1н канал и все приходит всем. А мне нужно что-то типа отдельных чатов создать. Нужно для каждого чата делать свой канал или еще варианты есть?
Paul Klementyev
@klermonte
Aug 14 2015 15:36
@13bit да, по каналу на чела
по каналу на чат имеет смысл, если у тебя может быть больше 2 собеседников в чате
Maksim (Ellrion) Platonov
@Ellrion
Aug 14 2015 15:37
кто знает почему хедер контент тайп не отправляться может?
Paul Klementyev
@klermonte
Aug 14 2015 15:37
@Ellrion наверно в сервере что-то не так)
Maksim (Ellrion) Platonov
@Ellrion
Aug 14 2015 15:37
ну вот например, куда смотреть?)
Dmitry
@13bit
Aug 14 2015 15:38
@klermonte мне нужно кабинеты юзеров подписать на обновления, чтобы им приходили уведомления
@klermonte со стороны php понятно, и как подписать клиентов тоже, а вот как быть с процессом Node который подписан на каналы
Paul Klementyev
@klermonte
Aug 14 2015 15:40
@13bit в смысле? ниче с ним не делать, он посылает всем подписанным, подписываются только нужные
@Ellrion может в конфигах как-то заглушено? я слышал в апаче было у людей так
Maksim (Ellrion) Platonov
@Ellrion
Aug 14 2015 15:41
@klermonte nginx+php-fpm у меня. в nginx не вижу ничего вроде
/etc/nginx$ grep -iR 'text/html'
mime.types:    text/html                html htm shtml;
но запрашивается не html ...
Dmitry
@13bit
Aug 14 2015 15:44

@klermonte не пойму как ограничить подпись.
В evant например
public function broadcastOn()
{
return ['test-channel/'.$id];
}

socket.js:
...
redis.subscribe('test-channel', function(err, count) {});
....

и на клиенте подписать на этот 'test-channel/'.$id канал?

Paul Klementyev
@klermonte
Aug 14 2015 15:45
redis.subscribe('test-channel/*', function(err, count) {});
@13bit из документации http://laravel.com/docs/5.1/events#broadcasting-events
var app = require('http').createServer(handler);
var io = require('socket.io')(app);

var Redis = require('ioredis');
var redis = new Redis();

app.listen(6001, function() {
    console.log('Server is running!');
});

function handler(req, res) {
    res.writeHead(200);
    res.end('');
}

io.on('connection', function(socket) {
    //
});

redis.psubscribe('*', function(err, count) {
    //
});

redis.on('pmessage', function(subscribed, channel, message) {
    message = JSON.parse(message);
    io.emit(channel + ':' + message.event, message.data);
});
@Ellrion have no idea)
Maksim (Ellrion) Platonov
@Ellrion
Aug 14 2015 15:49
ппц какой то просто
Dmitry
@13bit
Aug 14 2015 15:50
@klermonte спс сейчас попробую
Dmitry
@13bit
Aug 14 2015 16:00
@klermonte спасибо, помог )
Maksim (Ellrion) Platonov
@Ellrion
Aug 14 2015 16:00
мне бы вот кто помог)
Vitaliy Kravchyshyn
@freevital
Aug 14 2015 16:01
Всем привет. Вопрос к тем, что более менее дружит с СЕО.
some.com/?vasya_pupkin
some.com?/vasya_romeo
В этом случае мы попадаем на одну и ту же страницу. Как на это реагируют поисковики? Или может кто-то даст линк на пост?
Dmitry
@13bit
Aug 14 2015 16:01
@Ellrion а что у тебя?
Maksim (Ellrion) Platonov
@Ellrion
Aug 14 2015 16:02
отправляю хедер контент тайп джейсон, а он не приходит, вместо него текст\хтмл
связка nginx+php-fpm
Maxim
@Big-Shark
Aug 14 2015 16:03
@Ellrion глянь через перез сервер
Maksim (Ellrion) Platonov
@Ellrion
Aug 14 2015 16:03
@Big-Shark через что?
Maxim
@Big-Shark
Aug 14 2015 16:03
@Ellrion php -S
Dmitry
@13bit
Aug 14 2015 16:04
@Ellrion на nginx только сегодня пересел, сори
JhaoDa
@jhaoda
Aug 14 2015 16:50
Тостер, вопрос: Какую CMS выбрать для крупного информационного портала?
Один из ответов: «но я бы рекомендовал WordPress»
Чем думают эти рекомендаторы?
Maxim
@Big-Shark
Aug 14 2015 16:52
@jhaoda думают? Не думаю)
Dmitry
@13bit
Aug 14 2015 16:53
@jhaoda у нас крупные компании втюхиваю такие решения, за бешеные бабки) и там чуваки как загипнотизированные рассказывают что WP отлично подходит для всего)
JhaoDa
@jhaoda
Aug 14 2015 16:53
Про то и речь. Печально это...
MikhailRush
@MikhailRush
Aug 14 2015 16:55
Всем добрый вечер. Кто нибудь работал с этим? https://github.com/invisnik/laravel-steam-auth
Регистрацию пользователя из коробки сделал (5.1 версия) хотелось бы, чтобы при регистрации шла авторизация через стим, и при регестрации занесение steam id
JhaoDa
@jhaoda
Aug 14 2015 17:08
@MikhailRush вопрос-то в чем?
MikhailRush
@MikhailRush
Aug 14 2015 17:08
Вопрос в прикручивании
Точнее. Там и пример есть
JhaoDa
@jhaoda
Aug 14 2015 17:09
@MikhailRush ну, пример есть, что мешает прикрутить?
MikhailRush
@MikhailRush
Aug 14 2015 17:10
Например, при регистрации пользователя он вводит данные, при нажатии кнопки регистрации ему нужно авторизоватся в стиме, после успешной авторизации его стоит регестрировать
при регистрации как сделать валидацию и тп
JhaoDa
@jhaoda
Aug 14 2015 17:10
@MikhailRush какую валидацию?
Если ты про валидацию данных, которые ввёл пользователь, то при чем здесь этот пакет?
MikhailRush
@MikhailRush
Aug 14 2015 17:12
В пакете есть такая... $this->steam->validate()
Ох, ну и чушь я наверное несу. Новичок в фреймворке...
MikhailRush
@MikhailRush
Aug 14 2015 17:24
Итак. В миграциях создал поле $table->string('steam_id');
В моделе пользователя $fillable = ['name', 'email', 'password', 'steam_id'];
Не могу понять, как преобразовать AuthController (и стоит ли вообще)
tema-proximo
@tema-proximo
Aug 14 2015 17:38
Чуваки, а можно как-то сырые запросы группировать?
Maxim
@Big-Shark
Aug 14 2015 17:39
@tema-proximo можно
tema-proximo
@tema-proximo
Aug 14 2015 17:40
            $queryBuilder->where(function($query) {
                $query->whereRaw(
                    'date_taking >= STR_TO_DATE("' . $date . '", "%Y-%m-%d %H:%i:%s") OR date_delivery >= STR_TO_DATE("' . $date . '", "%Y-%m-%d %H:%i:%s")'
                );
            });
такую штуку пилю
а запрос все равно такой
select * from `requests` where `patient_surname` like '%ива%' and date_taking BETWEEN STR_TO_DATE("2015-08-14 00:00:00", "%Y-%m-%d %H:%i:%s") AND STR_TO_DATE("2015-08-14 23:59:00", "%Y-%m-%d %H:%i:%s") OR date_delivery BETWEEN STR_TO_DATE("2015-08-14 00:00:00", "%Y-%m-%d %H:%i:%s") AND STR_TO_DATE("2015-08-14 23:59:00", "%Y-%m-%d %H:%i:%s")
лайк запрос напирмер идет от queryBuildera
что я делаю не так?)
JhaoDa
@jhaoda
Aug 14 2015 17:43
This message was deleted
tema-proximo
@tema-proximo
Aug 14 2015 17:44
@jhaoda датетайм там)
JhaoDa
@jhaoda
Aug 14 2015 17:44
@tema-proximo ты не заметил, что я сообщение удалил?
tema-proximo
@tema-proximo
Aug 14 2015 17:45
@jhaoda Р-реакция
Maxim
@Big-Shark
Aug 14 2015 17:46
@tema-proximo странно
projct1
@projct1
Aug 14 2015 17:46

почему в модели в таких методах надо делать toArray всегда, чтобы потом в шаблоне использовать? Джефри тут так не делает (( https://laracasts.com/series/laravel-5-fundamentals/episodes/22

    public function getCategoryListAttribute()
    {
        return $this->category->lists('id')->toArray();
    }

в шаблоне юзаю так:

        <div class="form-group">
            {!! Form::select('categoryList[]', $properties, null, ['class' => 'form-control select2', 'multiple']) !!}
        </div>
JhaoDa
@jhaoda
Aug 14 2015 17:47
@rorc потому что надо доку читать. До 5.1 lists возвращал массив, с 5.1 — коллекцию.
tema-proximo
@tema-proximo
Aug 14 2015 17:47
@rorc имхо для селектов, ага
JhaoDa
@jhaoda
Aug 14 2015 17:48
@rorc урок же записан 8 месяцев назад, когда ещё и 5.0 не было
tema-proximo
@tema-proximo
Aug 14 2015 17:48
@Big-Shark 2 часа и так и этак я этот запрос верчу уже
Maxim
@Big-Shark
Aug 14 2015 17:49
@tema-proximo Я не использую элоквоент, ничего сказать не могу)
projct1
@projct1
Aug 14 2015 17:55
@jhaoda ок спс
JhaoDa
@jhaoda
Aug 14 2015 17:57
@rorc скажи честно, ты собираешься самостоятельно искать инфу и учиться или будешь заваливать чат вопросами?
projct1
@projct1
Aug 14 2015 18:03
@jhaoda ты переживаешь по поводу чего-то?
Xaaalera
@Xaaalera
Aug 14 2015 18:20
привет люди, только начал изучат ларавел, делаю запросы к БД пытаюсь вывести в шаблоне, но выдает ошибки
как вообще использовать команду типо print_r
чтобы оно показывало в любом случае?
Maxim
@Big-Shark
Aug 14 2015 18:20
@Xaaalera также как и обычно
Maksim (Ellrion) Platonov
@Ellrion
Aug 14 2015 18:21
@Xaaalera print в шаблоне?
ты доку читал?
Xaaalera
@Xaaalera
Aug 14 2015 18:21
читаю попутно
показывает не то что я хотел)
а я дурак, простите за глупые вопросы, я не передал переменную
извините за потраченое время
Maksim (Ellrion) Platonov
@Ellrion
Aug 14 2015 18:24
@Xaaalera не ты спрашивай, просто ответы не всегда тут особо приятные)
Xaaalera
@Xaaalera
Aug 14 2015 18:27
да мне дали задание быстренко накатить сайт, я сначало попробовал ларавел, ни че не понял, накатил юи, но уже как-то не то, привычнее расположение файлов в ларавеле, и да мой первый Фреймворк :)
сайт плевый в принципе просто вывод из бд
Maxim
@Big-Shark
Aug 14 2015 18:41
Что за класс такой \Persistent?
JhaoDa
@jhaoda
Aug 14 2015 18:48
@Big-Shark хз, это не core-класс
@jhaoda propelorm/Propel#488 и тут упоминают
@jhaoda propelorm/Propel#238 тут тоже
JhaoDa
@jhaoda
Aug 14 2015 18:54
@Big-Shark php.net не знает такого класса
Maxim
@Big-Shark
Aug 14 2015 18:54
@jhaoda вот и я не знаю, а он есть, ну или был)
@jhaoda чувствую себя дебилом, и ничего не могу понять
@jhaoda вкурил, это в пропел1 был, а так как фос не написали драйвер для версии 2, они используют версию 1, и так проверяют модель.
jongleb
@jongleb
Aug 14 2015 19:19
Вопрос на миллион или я один такой извращенец : На винде стоит опен сервер, хочу в опен сервер и пхп сторм погрузить ПХПЮНИТТЕСТ и писать ТДД на ларавеле, какие будуту инструкции по установке настройке народ
Пожалуйста подскажите
Paul Klementyev
@klermonte
Aug 14 2015 19:28
Ах, опередил
jongleb
@jongleb
Aug 14 2015 19:28
Я даже сомневаюсь знают ли они что такео опенсервер
ведь вопрос был именно о внедрении
JhaoDa
@jhaoda
Aug 14 2015 19:28
@jongleb кто «они»? О как «внедрении» речь?
Paul Klementyev
@klermonte
Aug 14 2015 19:29
Тебе пхп только нужен и пофигу где
jongleb
@jongleb
Aug 14 2015 19:29
Laravel разработчики
JhaoDa
@jhaoda
Aug 14 2015 19:29
@jongleb зачем им знать про опенсервер?
jongleb
@jongleb
Aug 14 2015 19:29
Я сказал что им нужно про него знать? я спросил как быть с окружением
JhaoDa
@jhaoda
Aug 14 2015 19:30
@jongleb а что не так с окружением?
jongleb
@jongleb
Aug 14 2015 19:30
в том что у меня php только в опенсервере
Paul Klementyev
@klermonte
Aug 14 2015 19:31
@Ellrion как успехи с хидером?
JhaoDa
@jhaoda
Aug 14 2015 19:31
@jongleb и дальше-то что?
jongleb
@jongleb
Aug 14 2015 19:31
А вот нашел https://toster.ru/q/125019 то что мне нужно , мб кому то тоже полезно будет
Maksim (Ellrion) Platonov
@Ellrion
Aug 14 2015 19:32
@klermonte а ни как, поехал домой, пятница все таки)
в пн буду добивать
JhaoDa
@jhaoda
Aug 14 2015 19:32
@jongleb или ты считаешь, что опенсервер это прям сервер, как апач и nginx?
jongleb
@jongleb
Aug 14 2015 19:34
Нет я так абсолютно не считаю
Paul Klementyev
@klermonte
Aug 14 2015 19:34
@Ellrion, ну в любом случае успехов, скорее всего дело окажется в какой-нибудь мелочи, как обычно)
jongleb
@jongleb
Aug 14 2015 19:35
речь не про HTTP сервер а про добавление в опенсервер пхпЮнит @jhaoda
Maksim (Ellrion) Platonov
@Ellrion
Aug 14 2015 19:36
@klermonte ага, спс
но вообще магия. впервые с таким сталкиваюсь
Accami
@Accami
Aug 14 2015 19:38
Ребят, а что в ларавел есть узе встроенная авторизация и регистрация ?
Maksim (Ellrion) Platonov
@Ellrion
Aug 14 2015 19:38
@Accami да
@Accami и напоминание пароля, и защита от подбора, вьюх нету только)
jongleb
@jongleb
Aug 14 2015 19:39
gulp-phpunit кто нибуь пользуется?
Accami
@Accami
Aug 14 2015 19:39
Отдельно писать нужно ? @Ellrion
Maksim (Ellrion) Platonov
@Ellrion
Aug 14 2015 19:40
@Accami ну их тебе хоть как писать нужно, стиль то приложухи свой у всех
jongleb
@jongleb
Aug 14 2015 19:40
Вьюхи то тоже есть
Maksim (Ellrion) Platonov
@Ellrion
Aug 14 2015 19:41
@jongleb не выпилили разве?
Paul Klementyev
@klermonte
Aug 14 2015 19:41
@jongleb в элексире по-моему была эта фича
jongleb
@jongleb
Aug 14 2015 19:41
А ну выпилили или нет я хз
@klermonte какая именно?
Paul Klementyev
@klermonte
Aug 14 2015 19:41
Запуск тестов
jongleb
@jongleb
Aug 14 2015 19:41
@klermonte gulp-phpunit ты пробывал?
Accami
@Accami
Aug 14 2015 19:41
Короче нужно доки читать с корки
=)
jongleb
@jongleb
Aug 14 2015 19:42
Или лучше стандартный phpUnit
Paul Klementyev
@klermonte
Aug 14 2015 19:42
@jongleb нет, не использовал
Можешь на модный phpSpec посмотреть
argab
@argab
Aug 14 2015 19:49
Привет всем. У меня вопрос общего характера: реально на ларе создавать высоконагруженные порталы с посещениями как у гугла (ну или чуть поменьше :), или тут дело не во фреймворке а в серверных технологиях
Xaaalera
@Xaaalera
Aug 14 2015 19:49
можно как-то полученый массив разбить на части, т.е в 1 переменной у меня 60 сущностей в другое тоже 60, может метод какой то есть в ларавеле, или это делать обычной пыхой? если есть то скажите где читать)
p.s это не пагинация
для пагинации я нашел там всё изи :с
@argab дело в технологиях
ты должен понять это :) так как нагрузка идет не на Фреймворк а на железо
Xaaalera
@Xaaalera
Aug 14 2015 19:52
арей чанк то я знаю я думал может умное что-то на ларе есть
ну лажно буду ваять функции тогда )
Maxim
@Big-Shark
Aug 14 2015 19:52
@argab как у гугла? Ты реально сейчас это?
JhaoDa
@jhaoda
Aug 14 2015 19:52
@Xaaalera что ещё умного тебе надо?
argab
@argab
Aug 14 2015 19:53
ну я так и думал в принципе, а вообще какой из ФВ лучше держит нагрузку, слыхал вроде фалькон не плох
Maxim
@Big-Shark
Aug 14 2015 19:54
@argab да ты прикалываешься? Ты не знаешь ничего про фреймверки и их производительность и собираешься делать сервис который будет работать под дикой нагрузкой?
argab
@argab
Aug 14 2015 19:55
@Big-Shark а я разве говорил, что собираюсь, про фреймворки ошибаешься работал с ии и с ларой
Maxim
@Big-Shark
Aug 14 2015 19:58
@argab ну да, очень большой список) Посмотри бенчмарки и пойми почему фалкон такой быстрый. Подумай о том зачем гугло го, и такое количество серверов.
Xaaalera
@Xaaalera
Aug 14 2015 20:09
почему при запросе такого типа в контроллере выдает ошибку $data = DB::select('select * from name); а если использовать то-же самое при описании роутинга, то ошбки не будет ?
Maksim (Ellrion) Platonov
@Ellrion
Aug 14 2015 20:11
@argab нормально бери лару. не прогадаешь, на 2ух серверах держет как весь вконтакте или фэйсьук. купишь 3 считай гугл
argab
@argab
Aug 14 2015 20:22
@Ellrion Да я все прекрасно понимаю)) Просто в какой-то мере прикалываюсь, понятно что на одном ФВ далеко не уедешь, но и от выбора оного тоже много зависит, поэтому спрашиваю
Paul Klementyev
@klermonte
Aug 14 2015 20:22
Слишком толсто
Maksim (Ellrion) Platonov
@Ellrion
Aug 14 2015 20:23
@klermonte пятница же)
Paul Klementyev
@klermonte
Aug 14 2015 20:23
А, ну раз так))
@Xaaalera, потому что в неймспейсе DB не подлючил. use DB или от корня всегда пиши \DB...
argab
@argab
Aug 14 2015 20:26
@Ellrion А ты создавал высоконагруженные проекты?
Maksim (Ellrion) Platonov
@Ellrion
Aug 14 2015 20:26
@argab просто ты слабо представляешь себя масштабы таких приложений. вот у нас хайлоад часть, так там одних логов в сжатом виде за сутки 10 гигов) а ты говоришь фреймворк
а масштабы всяких гуглов и т.п. я думаю мы тут все не представляем
argab
@argab
Aug 14 2015 20:28
@Ellrion Согласен, надо опыта по этой части набирать, взяли бы меня в команду опытных разработчиков, а то так сам как волк одиночка
@Ellrion А где ето у вас если не секрет?
Maksim (Ellrion) Platonov
@Ellrion
Aug 14 2015 20:31
@argab рекламная сетка
censoredgit
@censoredgit
Aug 14 2015 20:31
@argab смотри в сторону phalcon2. если хочешь баланс то скорей всего yii2. про посещаемость как у гугла, фб, вк - забудь
argab
@argab
Aug 14 2015 20:32
@Ellrion на ларе работает?
Maksim (Ellrion) Platonov
@Ellrion
Aug 14 2015 20:32
@argab нет конечно) на ларе только бэк-офис и лк реклов сейчас
@censoredgit yii и лара по производительности нет разницы. а в удобстве большая
argab
@argab
Aug 14 2015 20:35
@censoredgit О фальконе мало слыхал, только то что он самый производительный из пхп ФВ. Смогу я его на локальном XAMPP сервере?
censoredgit
@censoredgit
Aug 14 2015 20:35
@Ellrion увы, но разница есть и нормальная такая
Maksim (Ellrion) Platonov
@Ellrion
Aug 14 2015 20:35
@censoredgit брехня
censoredgit
@censoredgit
Aug 14 2015 20:36
@argab конечно сможешь. нужно dll скачать и подключить
argab
@argab
Aug 14 2015 20:36
@censoredgit есть мануал?
censoredgit
@censoredgit
Aug 14 2015 20:37
@Ellrion ну я сам тестил у себя на локалке. где лара 5 (с откл кучей провайеров) выдавала максимум 30 rps, yii2 по дефолту выдавал 80 rps
@argab у них на сайте русская дока)
argab
@argab
Aug 14 2015 20:38
@censoredgit спасибо брат
Maksim (Ellrion) Platonov
@Ellrion
Aug 14 2015 20:38
@censoredgit круть) а теперь построй на этом реальную приложуху со сложной бизнес логикой. и вот тогда разница в пару милисекунд вообще ничего не будет значить
а разница будет именно такая, тоесть почти никакой
беда всех тестов в том, что они на очень простых примерах
argab
@argab
Aug 14 2015 20:39
а можете немного намекнуть, что это за 30 и 80rps?
Maksim (Ellrion) Platonov
@Ellrion
Aug 14 2015 20:40
а на сложных порою сервер дешевле чем время команды на разработку
да не порою а всегда
@argab рпс это реквестов в секунду
argab
@argab
Aug 14 2015 20:40
милисекунды
а понял
Paul Klementyev
@klermonte
Aug 14 2015 20:41
Нет
Запросов в секунду
Rps - requests per second
Maksim (Ellrion) Platonov
@Ellrion
Aug 14 2015 20:41
@klermonte не успел :p
Xaaalera
@Xaaalera
Aug 14 2015 20:41
Шпасибо за ответ
Paul Klementyev
@klermonte
Aug 14 2015 20:42
Не все ж тебе кэпом быть)
argab
@argab
Aug 14 2015 20:44
это что же ии2 в 2.5 раза запросов больше выдерживает?
Maksim (Ellrion) Platonov
@Ellrion
Aug 14 2015 20:44
вообще тейлор со своей ларой скотина( я столько времени угрохал на свой фреймворк на базе сайлекса, а он взял и сделал все что я хотел... загубил мне карьеру)
censoredgit
@censoredgit
Aug 14 2015 20:44
@Ellrion хз хз . но я не стал рисковать
JhaoDa
@jhaoda
Aug 14 2015 20:44
@argab в сферическом вакууме, на приложении типа Hello world — да
argab
@argab
Aug 14 2015 20:44
@Ellrion :) красавчик
Maksim (Ellrion) Platonov
@Ellrion
Aug 14 2015 20:44
@censoredgit серьезно тебе говорю. есть у нас проекты и на yii и на рельсах. не имеет значения все это
JhaoDa
@jhaoda
Aug 14 2015 20:45
@argab а как дойдёт дело до реального приложения — см. выше
argab
@argab
Aug 14 2015 20:46
@jhaoda ты про рельсы или ии?
JhaoDa
@jhaoda
Aug 14 2015 20:46
@argab ты про рельсы спрашивал? Нет.
Эх, помню, я и композер не признавал, и фреймворк свой холил и лелеял
А потом меня накрыло осознание, что кактус-то не вкусный
Maksim (Ellrion) Platonov
@Ellrion
Aug 14 2015 20:49
даа композер это огромный скачек в пыха мире
JhaoDa
@jhaoda
Aug 14 2015 20:50
Ну не то, что бы огромный, был же PEAR
Другое дело, что это качественный скачок
Maksim (Ellrion) Platonov
@Ellrion
Aug 14 2015 20:51
@jhaoda вот именно что с пиром не пошло. слишком сложно, слишком строгие правила, слишком неудобно
появился композер, пакеты стали появляться как грибы
модульность стала во главу угла. свой фреймворк собрать можно легко и быстро
композер+ сервисная архитектура со всякими ioc тот пинок под зад который снова вернул пыху жизнь
Oussama Elgoumri
@OussamaElgoumri
Aug 14 2015 22:25
@OussamaElgoumri
i keep getting
Maximum execution time of 60 seconds exceeded laravel
on laravel 5.1, what does this mean?
Maksim (Ellrion) Platonov
@Ellrion
Aug 14 2015 22:29
@OussamaElgoumri this is russian community твою мать!)
Oussama Elgoumri
@OussamaElgoumri
Aug 14 2015 22:30
@Ellrion so ...! can't i get help from russian's WTF
Maksim (Ellrion) Platonov
@Ellrion
Aug 14 2015 22:31
@OussamaElgoumri speak in russian and we help you)
Oussama Elgoumri
@OussamaElgoumri
Aug 14 2015 22:32
i wish i could, russian is on my top list of must learn language
Maksim (Ellrion) Platonov
@Ellrion
Aug 14 2015 22:33
@OussamaElgoumri ok show your code
The problem it's working, but it does not complete the generation
Maksim (Ellrion) Platonov
@Ellrion
Aug 14 2015 22:39
@OussamaElgoumri what a method of work for so long?
Oussama Elgoumri
@OussamaElgoumri
Aug 14 2015 22:40
when i run trough the browser, sometimes it work
and sometimes i get this message
FatalErrorException in MySqlGrammar.php line 0:
Maximum execution time of 60 seconds exceeded
Maksim (Ellrion) Platonov
@Ellrion
Aug 14 2015 22:42
@OussamaElgoumri what route are your call?
Oussama Elgoumri
@OussamaElgoumri
Aug 14 2015 22:43
and this is the controller
get('dummy/generate', function () {
    if (env('APP_DEBUG')) {
        try {
            new DBGenerator();

            return view('_dummy_.index', [
                'nb_users' => \App\User::count(),
                'nb_vehicles' => \App\Vehicle::count(),
                'nb_cars' => \App\Car::count(),
                'nb_bikes' => \App\Bike::count(),
            ]);
        } catch (\Exception $e) {
            return $e->getMessage();
        }
    } else {
        return "The dummy will overwrite any data on a production server.";
    }
});
This error is very annoying, because i want to generate a database of more than 100000 to test how the website behave with large database, and i can't catch the error either?
Maksim (Ellrion) Platonov
@Ellrion
Aug 14 2015 22:47
delete try-catche and show all exception call stack
Oussama Elgoumri
@OussamaElgoumri
Aug 14 2015 22:47
The exception is not captured
wait
i get the full stack FatalErrorException, captured by symfony
Maksim (Ellrion) Platonov
@Ellrion
Aug 14 2015 22:49
show it
Oussama Elgoumri
@OussamaElgoumri
Aug 14 2015 22:55
i was trying to regenerate the exception
now i have another
Maksim (Ellrion) Platonov
@Ellrion
Aug 14 2015 22:57
anyway your code really ugly and strange
sory but its fact
Oussama Elgoumri
@OussamaElgoumri
Aug 14 2015 22:57
Screenshot from 2015-08-14 23:56:41.png
ok, sorry for troubling you
Maksim (Ellrion) Platonov
@Ellrion
Aug 14 2015 22:59
its ok
errazki1995
@errazki1995
Aug 14 2015 23:15
ousama elgoumry hey bro
@OussamaElgoumri :)