@laravel_pro

Страница 326 из 2014
Wolf
24.01.2017
10:56:01
завтра официальный релиз

в твитере писал

Алексей
24.01.2017
11:12:03
щас бы жаловаться, что обновления - это плохо
Некоторые еще на v2 сидят, пишут потихой и не выпендриваются )

Quiss
24.01.2017
11:51:36
завтра официальный релиз
?? я уже доку почитать успел

Google
Quiss
24.01.2017
11:51:38
по 5.4

https://laravel.com/docs/5.4/releases

Юрий
24.01.2017
12:15:20
?? я уже доку почитать успел
речь о том что в штатах еще не утро

и на сайте 5.3 на главной и документация по 5.3 как основная

D'
24.01.2017
12:16:04
Object Based Eloquent Events Супер

Я заебался искать где я события забиндил ?

Юрий
24.01.2017
12:20:37
https://github.com/laravel/framework/blob/5.4/CHANGELOG-5.4.md

так лучше

Quiss
24.01.2017
12:24:51
так лучше
согласен)

marabu
24.01.2017
12:27:00
function retry($times, callable $callback) { $times--; beginning: try { return $callback(); } catch (Exception $e) { if (! $times) { throw $e; } $times--; goto beginning; } }

зачем?

Quiss
24.01.2017
12:27:36
повторять N раз

вдруг чота получится

Google
(;¬_¬)
24.01.2017
12:32:47
можно же было while сделать

О_о

Sergey
24.01.2017
12:33:28
function retry($times, callable $callback) { $times--; beginning: try { return $callback(); } catch (Exception $e) { if (! $times) { throw $e; } $times--; goto beginning; } }
=-O привет бейсик. ИНтересно, чем они руководствовались? Типа "оптимизация" что ли? Но сомнительно

i
24.01.2017
12:35:26
Я такое с while делал, первая версия тоже с goto была

Sergey
24.01.2017
12:38:42
ну так любой goto в осмысленном коде можно поменять на конструкции while, for, if... Времена ассемблера прошли

Sergey
24.01.2017
12:40:45
Ну это в минус автору кода, кем бы он не был

Я, реально, в своей жизни goto использовал только в конце 90хх начале 00хх последний раз, не считая ассемблера и то там не goto :)

а jmp XD ну в tasm

Юрий
24.01.2017
12:44:54
видимо они на страницу goto не заходили в документации

единственная страница документации так оформленная

http://php.net/manual/ru/control-structures.goto.php

Sergey
24.01.2017
12:50:42
так оно еще и новомодное, только с 5.3 появилось

Вот, наверно, почему. :)

Sergey
24.01.2017
13:50:22
Всем гуру лары привет

Есть такой вопрос, по стандартному create/update

наприме это сейчас в контроллере и выглядит примерно так

$app = Application::find($request->id); $app->platform_id = $request->app['platform_id']; $app->name = $request->app['name']; $app->bundle_id = $request->app['bundle_id']; $app->type_id = $request->app['type_id']; $app->localization_id = $request->app['localization_id']; $app->orientation_id = $request->app['orientation_id']; $app->save();

и тоже самое с create только new App....

как лучше данные операции в одну функцию вынести?

Google
Sergey
24.01.2017
13:51:48
$app->platform_id = $request->app['platform_id']; $app->name = $request->app['name']; $app->bundle_id = $request->app['bundle_id']; $app->type_id = $request->app['type_id']; $app->localization_id = $request->app['localization_id']; $app->orientation_id = $request->app['orientation_id'];

в модельку в какой-нибудь setData?

DDiimmkkaass
24.01.2017
14:00:24
заполни fillable масив в модельке и $app->fill($request->all())

$app->save();

Dmitrii
24.01.2017
14:01:29
firstOrNew() и fill() методы здорово разгребут эти строки кода.

$app = Application::findOrNew($id)->fill($request->app);

Затем save

Sergey
24.01.2017
14:03:46
а если например в #requeest->app у меня содержится 10 полей, а мне нужно заполнить 15, и другие 5 я подбираю в коде, это нормально если я их в $request->new_field добавлю?

DDiimmkkaass
24.01.2017
14:06:38
$request->new_field - как на меня, не очень, все-таки это не запрос можно винести в сервис в отдельную функцию ,что-то типа prepareData и там докидивать

Sergey
24.01.2017
14:06:59
спасибо

DDiimmkkaass
24.01.2017
14:07:01
или в мидлваре каком (но тогда уже будет в реквесте), но если в мидлвате, то норм

Dmitrii
24.01.2017
14:07:16
Смотря откуда ты берешь данные для вычисления оставшихся 5 полей. Если это от каких-либо постоянных или сторонних значений, то сделай для них мутаторы. Если значения этих полей вычисляются в зависимости от уже имеющихся 10, то лучше в метод.

Dmitrii
24.01.2017
14:10:03
Но доп методы стоит использовать лишь для повторного использоваия. Тупо ради красивого кода - это нецелесообразно. Безбашенное кол-во строк выглядит не лучше безбашенного кол-ва методов. Просто если используешь возможности фреймворка, то проблемы так или иначе избежишь.

Myroslav
24.01.2017
14:13:41
не ожидал такой логики

Юрий
24.01.2017
14:17:04
про возможности фреймворка гоготнул. при учете того что зачастую логика работы компонентов фрейворка закрыта пока не залезешь в исходники, да еще и поменяться может

Dmitrii
24.01.2017
14:20:29
О_о, а вы не лазаете в исходники?

Юрий
24.01.2017
14:25:27
к вопросу про goto

https://github.com/laravel/framework/pull/15973#issuecomment-254443079

что за малолетка которая тащит странные архитектурные решения?

GrahamCampbell некий

Google
i
24.01.2017
14:43:30
В чём проблема goto

Wild
24.01.2017
14:44:29
Тут у кого то в чатике была либа php для работы с api vk

Нужна очень сейчас

Линканете?

i
24.01.2017
14:45:13
это curl

Wild
24.01.2017
14:46:11
Не, оч удобная либа была

Admin
ERROR: S client not available

Quiss
24.01.2017
14:47:54
Не, оч удобная либа была
ну была чота такое

тока вот, доступ до прода из дома(

В чём проблема goto
https://github.com/laravel/framework/pull/15973#issuecomment-254534454 (последний коммент)

Quiss
24.01.2017
14:50:30
а в php5?
ты ищо не перешол на 7.0??11?1!1!!

Vladimir
24.01.2017
14:50:32
Этот чат странный) только что в нем красиво обсуждали бест практис структурированного кода, и следом же идиотское обсуждение "в чем проблема goto")))

i
24.01.2017
14:56:10
ты ищо не перешол на 7.0??11?1!1!!
Laravel пока ещё >= php 5.6

Vladimir
24.01.2017
14:56:50
Ладно)

Wild
24.01.2017
14:57:49
https://github.com/atehnix/vk-client

А вот эта либа из рая)

Sergey
24.01.2017
16:53:26
От чего зависит наличие связи в "realtions" http://skrinshoter.ru/s/240117/WOxAWbvV ? У меня 5 связей у модели, но тут только 4, хотя из кода я могу получить все 5

class Task extends Model { // Images validation rules protected $rules = array('file' => 'image'); public function application() { return $this->belongsTo('App\Models\Application'); } public function images() { return $this->hasMany('App\Models\TaskImage'); } public function blocked_links() { return $this->hasMany('App\Models\BlockedLink'); } public function blocked_buttons() { return $this->hasMany('App\Models\BlockedButton'); } public function reg_exps() { return $this->hasMany('App\Models\RegExp'); } }

Google
DDiimmkkaass
24.01.2017
17:12:42
эти четыри, это https://laravel.com/docs/5.3/eloquent-relationships#eager-loading они уже подгружены в модель, ну или ты уже делал к ним обращение и они загружены но любую связь ты можеш вызвать в любой момент (потому доступуна и пятая) просто если данные уже загружены, то не будет нового запроса в базу (если работать как с коллекцией)

Евгений
24.01.2017
17:19:42
посоны

вопрос

были на сайте страницы (так будет проще для понимания, на самом деле не страницы)

это модель. и было всё одно. /page/{slug}

Евгений
24.01.2017
17:20:56
теперь надо сделать тип страницы page|post грубо говоря и чтобы в урле было /{type}/{slug}

как сделать чтобы в данном случае роут срабатывал только если type = page или post? а то такой роут может перебить кучу всего на сайте

Евгений
24.01.2017
17:21:57
во, спасибо

щас попробую

Quiss
24.01.2017
17:22:08
ток я не помню, но вроде так

но в общем вот)

Евгений
24.01.2017
17:22:19
ага, щас затестирую)

Quiss
24.01.2017
17:22:35
ну или запятые там, проверь

@perin ->where('replay_type', '(positive|negative|)')

сорян)

Страница 326 из 2014