These are chat archives for LaravelRUS/chat

19th
Jul 2015
Alexander Popov
@ruelephant
Jul 19 2015 02:48
@jhaoda я тоже пишу array()
не вижу криминала :)
из опциональной фитчи, сделали блин «депрекейдед» и радуются сидят
JhaoDa
@jhaoda
Jul 19 2015 03:08
@ruelephant тебе вообще пора инвалидность оформлять, как пострадавшему от ынтырпрайза
ruelephant @ruelephant записал подать докладную записку
Alexander Popov
@ruelephant
Jul 19 2015 04:15
… в связи с большим количеством жалоб на канале LaravelRus/сhat прошу...
…в количестве…00000 тысяч…
…на дополнительных….отпуск…пожизненно
ruelephant @ruelephant проставил печать отказано заранее
Роман Сохарев
@greabock
Jul 19 2015 09:36
проверка
Alexander Popov
@ruelephant
Jul 19 2015 09:47
проверка
Роман Сохарев
@greabock
Jul 19 2015 09:47
@ruelephant да успокойся ты - я уже проверил =)
@slider23
Alexander Popov
@ruelephant
Jul 19 2015 09:58
@greabock
Роман Сохарев
@greabock
Jul 19 2015 09:58
м?
Alexander Popov
@ruelephant
Jul 19 2015 10:12
да просто :)
Vitaly
@Modifikator
Jul 19 2015 12:49
у вас нормально отрабатывает event:generate ?
JhaoDa
@jhaoda
Jul 19 2015 13:00
@Modifikator может ты сразу расскажешь о своей проблеме?
Vitaly
@Modifikator
Jul 19 2015 13:11
@jhaoda да
'App\Events\RegisterEvent' => [ 'App\Handlers\Events\RegisterEventHandler@handle', ],
генерирует имя RegisterEventHandler@handle.php
и класс тоже
JhaoDa
@jhaoda
Jul 19 2015 13:14
@Modifikator а заем ты пишешь @handle?
Vitaly
@Modifikator
Jul 19 2015 13:14
это копипаст из дока)
Роман Сохарев
@greabock
Jul 19 2015 13:17
...
Ребятки, чет уже полчаса ковыряю blade и никак не могу разобраться: есть ли адекватный способ распарсить строку (не файл) шаблонизатором?
Роман Сохарев
@greabock
Jul 19 2015 13:23
Все - нашел )
Роман Сохарев
@greabock
Jul 19 2015 13:36
Нет, я ошибся =(
Роман Сохарев
@greabock
Jul 19 2015 13:48
@Modifikator спасибо, за внимание, но в гугле искать я умею )) Хотелось бы без пакетов обойтись.
JhaoDa
@jhaoda
Jul 19 2015 14:22
А код писать они будут так же, в стиле Битрикса?
JhaoDa
@jhaoda
Jul 19 2015 14:34
Но, наверное, надо радоваться тому, что не Битриксом единым жив человек...
Danil Dzhenuik
@Ddzhenyik
Jul 19 2015 14:43
Ребят, а как можно на один экшн контроллепа присвоить несколько middleware-ов?
JhaoDa
@jhaoda
Jul 19 2015 14:44
@Ddzhenyik сначала один присвоить, а потом второй?
Да не, чота слишком просто...
Danil Dzhenuik
@Ddzhenyik
Jul 19 2015 14:45
черт.. сори .. проблема решилась.. мозги уже не варят просто... все работает нормально, просто присвоил их к одному экшну, а тестировал другой)
Роман Сохарев
@greabock
Jul 19 2015 14:50
В общем, если кому интересно - накатал простенький хелпер
function string_render($template, array $args = array())
{
    $compiled = Blade::compileString($template);

    ob_start() and extract($args, EXTR_SKIP);

    try
    {
        eval( '?>' . $compiled);
    }
    catch (Exception $e)
    {
        ob_get_clean();
        throw $e;
    }

    $content = ob_get_clean();

    return $content;
}
JhaoDa
@jhaoda
Jul 19 2015 15:09
@greabock так тебе её еще и выполнить на лету надо?
Роман Сохарев
@greabock
Jul 19 2015 15:20
@jhaoda угу )
iGloom
@iGloom
Jul 19 2015 15:40
господа, есть теоретический вопрос. исходные данные такие:
контроллер получает на вход набор строк, которые нужно распарсить. правила парсинга будут менять в зависимости от инпутов.
у меня каждый парсер разделен, и лежит отдельно. в сумме их сейчас около 2х десятков, может быть до сотни.
писать их в виде аргументов конструктора в контроллере - совсем не улыбается, к тому же мне совершенно не нужно такое кол-во классов, вызываемых на любой чих
как лучше это делать? неужели просто $parser = new SomethingParser();? или есть какой-то laravel-way?
JhaoDa
@jhaoda
Jul 19 2015 15:44
@iGloom зачем laravel-way, если есть php-way?
Нет, если эти классы-парсеры хотят в конструктор принимать какие-то зависимости, то тут уже php-way не катит
Роман Сохарев
@greabock
Jul 19 2015 16:02
@iGloom выдели парсеры в сервис.Создай коллекцию, Храни все парсеры в коллекции. Инициализируй в сервис-провайдере синглтон/инстанс коллекции. Там же сложи все парсеры в коллекцию. Получай объект коллекции через DI. Получай нужный парсер из коллекции.
JhaoDa
@jhaoda
Jul 19 2015 16:04
@greabock зачем инициализировать все 20+ парсеров сразу?
Роман Сохарев
@greabock
Jul 19 2015 16:05
@jhaoda никто не говорит, что они должны быть инициализированы
пусть там имена классов хранятся
JhaoDa
@jhaoda
Jul 19 2015 16:05
Аааа, «Инициализируй ... инстанс коллекции»
Роман Сохарев
@greabock
Jul 19 2015 16:06
угу
JhaoDa
@jhaoda
Jul 19 2015 16:07
@greabock а как получить элемент коллекции через DI?
Роман Сохарев
@greabock
Jul 19 2015 16:07
Никак
объект коллекции == инстанс коллекции
JhaoDa
@jhaoda
Jul 19 2015 16:07
А, опять не про объект-элемент, а про объект-коллекцию речь
@greabock тебе бы в нелегальную разведку...
Роман Сохарев
@greabock
Jul 19 2015 16:08
=)))
iGloom
@iGloom
Jul 19 2015 16:10
@greabock то есть коллекция нужна для того, чтобы знать имя парсера, и не более того? что, если имя парсера я могу знать заранее?
путем чтения доков нашел вариант с App::make('classname'), вызываемый прям из контроллера.
есть ли какие-то минусы у такого решения?
symbios_zi
@symbiosss
Jul 19 2015 16:12
всем привет. Такая проблема. Использую eager loading для получения связанной модели, но когда обращаюсь к ней, получаю только primary key. http://laravel.io/bin/2Wbjr
Роман Сохарев
@greabock
Jul 19 2015 16:12

элемент коллекции я вижу как-то так:

['param1'=> 'some', 'param2' => 'someElse', 'App\Parsers\ConcreteParser']

и получение в контроллере как-то так

$parser = new $parsers
        ->where('param1', Request::get('param1'))
        ->where('param2', Request::get('param2'))->first();
symbios_zi
@symbiosss
Jul 19 2015 16:13
@greabock привет, подскажи по поводу with
Роман Сохарев
@greabock
Jul 19 2015 16:15
@symbiosss вроде все верно
JhaoDa
@jhaoda
Jul 19 2015 16:15
@iGloom App::make('SomethingParser') равносилен new SomethingParser();, за исключением того, что App::make может по интерфейсу найти реализацию и ещё разрешает зависимости
symbios_zi
@symbiosss
Jul 19 2015 16:15
если в foreach обращаюсь, $object->street то получаю сразу айдишник, не могу получить другие поля
а вот дебаг http://joxi.ru/eAO4Kd6Sg17bro.jpg
Роман Сохарев
@greabock
Jul 19 2015 16:16
@symbiosss у тебя похоже поле в базе называется street
iGloom
@iGloom
Jul 19 2015 16:16
@jhaoda да, вот этот момент тоже хотел уточнить! спасибо.
@greabock спасибо.
Роман Сохарев
@greabock
Jul 19 2015 16:17
JhaoDa
@jhaoda
Jul 19 2015 16:17
@iGloom поэтом я и спрашиваю — у тебя в парсерах есть зависимости?
iGloom
@iGloom
Jul 19 2015 16:17
@greabock забавно, но вот его прочитав и сделал App::make
JhaoDa
@jhaoda
Jul 19 2015 16:17
Зачем умножать сущности и печали, если зависимостей нет и есть простой РНР-путь?
iGloom
@iGloom
Jul 19 2015 16:18
@jhaoda к сожалению зависимости есть. путь с App::make мне подходит лучше
symbios_zi
@symbiosss
Jul 19 2015 16:19
фигня полнейшая :(
Роман Сохарев
@greabock
Jul 19 2015 16:19
@symbiosss окей, я тебе задаю вопрос прямо:
у тебя поле в базе называется street?
symbios_zi
@symbiosss
Jul 19 2015 16:21
@greabock в какой таблице?
есть да такое поле
@greabock забавно, поменял метод street на другое и норм.
т.е. если есть такое поле он вернет его, а не связь. верно?
Роман Сохарев
@greabock
Jul 19 2015 16:25
@symbiosss читать
symbios_zi
@symbiosss
Jul 19 2015 16:26
@greabock спасибо
symbios_zi
@symbiosss
Jul 19 2015 16:51
@greabock так давай продолжение статьи про магазины!
lolylol
@lolylol
Jul 19 2015 16:55
парни здравствуйте. Не подскажите можно ли использовать это для мгновенных уведомлений? http://packalyst.com/packages/package/jhonn921007/brain-socket нужно оповещать администратора о заявках с сайта. Там пользователи звонок заказывают
Роман Сохарев
@greabock
Jul 19 2015 16:55
@symbiosss Я же кажется сказал "делайте блоги" =))
@lolylol попробуй, и нам расскажешь =)
symbios_zi
@symbiosss
Jul 19 2015 17:02
@greabock какие блоги? я так воодушевлен был ларавелькой, а ты мне тут такое заявляешь: "делайте блоги!" )))
symbiosss @symbiosss ушел изучать symfony
Роман Сохарев
@greabock
Jul 19 2015 17:03
ну можешь и на symfony блоги делать. Кто ж мешает =))
symbios_zi
@symbiosss
Jul 19 2015 17:03
@greabock так на чем по твоему тогда делать магазины?
@lolylol готовься изучить вебсокеты :)
Роман Сохарев
@greabock
Jul 19 2015 17:06
@lolylol если админ один или несколько (некоторое некритичное количество), то сделай опрос сервера по таймауту (раз в пять секунд, допустим) и не парься с вебсокетами.
lolylol
@lolylol
Jul 19 2015 17:06
@greabock а если еще реал тайм чат надо сделать то все равно сокеты?
JhaoDa
@jhaoda
Jul 19 2015 17:08
@lolylol т.е. 5 секунд уже не реалтайм?
symbios_zi
@symbiosss
Jul 19 2015 17:08
@lolylol почему бы тебе готовое решение не использовать?
@jhaoda нет конечно
JhaoDa
@jhaoda
Jul 19 2015 17:09
@symbiosss почему «конечно»?
Роман Сохарев
@greabock
Jul 19 2015 17:09
@lolylol я видел и чат по таймауту. Реализация ужас, но работал. Вебсокеты изучать нужно в любом случае - за ними будущее. Но для таких конкретных целей лучше взять что-то в духе ЖивоСайт или другой подобной хрени - тысячи их. Сам убьешь много времени и все равно не сделаешь как надо с первого раза.
symbios_zi
@symbiosss
Jul 19 2015 17:09
@jhaoda ну представь я написал подобие crm на ларавел, и сделал связку с айпи телефонией. Для меня эти 5 секунд критичны будут если хочу по звонку вызывывать карточку из ларавельки
lolylol
@lolylol
Jul 19 2015 17:09
я так понимаю веб сокеты не каждый хостинг еще поддерживает?
JhaoDa
@jhaoda
Jul 19 2015 17:10
@symbiosss ты под свои условия подогнал
symbios_zi
@symbiosss
Jul 19 2015 17:10
@jhaoda, я пример привел
JhaoDa
@jhaoda
Jul 19 2015 17:10
Если человек хочется просто видеть оповещения о заказах, то 5 секунд за глаза
symbios_zi
@symbiosss
Jul 19 2015 17:10
@jhaoda не спорю, но это не реалтайм ))
JhaoDa
@jhaoda
Jul 19 2015 17:10
У меня на оном сайте 2 минуты интервал, и ничего
@symbiosss реалтайм от задачи зависит, не надо фапать на семантический смысл слова
symbios_zi
@symbiosss
Jul 19 2015 17:11
@jhaoda не надо коверкать смысл слов
Роман Сохарев
@greabock
Jul 19 2015 17:12
@jhaoda я тебе скажу так, если админов не тысяча, то и раз в секунду опрос сервак никак не положит ))
JhaoDa
@jhaoda
Jul 19 2015 17:12
@greabock я и говорю, от задачи всё зависит
@symbiosss окай, если ты хочешь истинного смысла, то даже сокеты не реалтайм
symbios_zi
@symbiosss
Jul 19 2015 17:14
@jhaoda не хочу истинного смысла )))
Роман Сохарев
@greabock
Jul 19 2015 17:14
@jhaoda ну... тогда даже твое отражение в зеркале - не реалтайм =)
symbios_zi
@symbiosss
Jul 19 2015 17:15
5 секунд это точно не реалтайм ))
JhaoDa
@jhaoda
Jul 19 2015 17:20
Вообще, реалтайм это когда ты гарантированно получаешь отклик на какое-то событие за определённое время. Но нигде не сказано, что это самое «определенное время», например, 0,5 секунды.
symbios_zi
@symbiosss
Jul 19 2015 17:28
@jhaoda согласен
JhaoDa
@jhaoda
Jul 19 2015 17:30
@symbiosss ну раз согласен, то почему 5 секунд не реалтайм?
Для тебя — нет, для меня — да. Всё относительно.
symbios_zi
@symbiosss
Jul 19 2015 17:31
@jhaoda потому что он имел ввиду не 5 секунд, это раз. во вторых если так извращаться то реалтаймом можно назвать и год
JhaoDa
@jhaoda
Jul 19 2015 17:31
@symbiosss да хоть век
symbios_zi
@symbiosss
Jul 19 2015 17:31
@jhaoda но видимо ты учился в гуманитарном университете где больше филосовствуют, нежели стремятся к точности
JhaoDa
@jhaoda
Jul 19 2015 17:31
В астрономических масштабах и 10 веков реалтайм
symbios_zi
@symbiosss
Jul 19 2015 17:31
а я учился в техническом, где в реалтайме была критичность времени
@jhaoda ну вот так и скажи чуваку, сделай скрипт который раз в год/век будет делать опрос. хуле реалтайм
JhaoDa
@jhaoda
Jul 19 2015 17:32
Во, у вас там RTOS и прочие миллисекунды
symbios_zi
@symbiosss
Jul 19 2015 17:32
мне твоя софистика не интересна. нет смысла спорить
JhaoDa
@jhaoda
Jul 19 2015 17:33
А я на физика учился, поэтому я знаю, что всё относительно
symbios_zi
@symbiosss
Jul 19 2015 17:33
@jhaoda у меня был qnx
увы не изучали относительность времени в разрезе языков программирования мы
JhaoDa
@jhaoda
Jul 19 2015 17:34
Бесполезно что-то объяснять...
symbios_zi
@symbiosss
Jul 19 2015 17:37
@jhaoda да ты не объяснить пытаешься а поумничать. мы обсуждали скрипт для общения клиента и продавца, а не вселенную. Ты мне пытаешься доказать то что я и так знаю. Человек сразу предположил использовать вебсокеты, что уже должно было тебя довести до мысли что реалтайм в нашем случае не год.
JhaoDa
@jhaoda
Jul 19 2015 17:37
Я и говорю, бесполезно...
symbios_zi
@symbiosss
Jul 19 2015 17:38
:D
если не доходчиво могу пояснить, что означает "в темпе, соизмеримом со скоростью протекания этих процессов."
JhaoDa
@jhaoda
Jul 19 2015 17:41
@symbiosss о, ну давай переложим на обсуждаемую задачу. Итак, что в рамках этой задачи есть процесс, а что есть реакция на него?
symbios_zi
@symbiosss
Jul 19 2015 17:41
@jhaoda передача данных думаю
JhaoDa
@jhaoda
Jul 19 2015 17:41
Передача каких данных и куда?
symbios_zi
@symbiosss
Jul 19 2015 17:42
@jhaoda не грузи пожалуйста.
JhaoDa
@jhaoda
Jul 19 2015 17:42
Вот я и говорю...
symbios_zi
@symbiosss
Jul 19 2015 17:42
еще 1000 вопросов же задашь, говори что думаешь
в данном контексте я подразумеваю реалтайм это то время с которой информация доходит от точки до точки (клиент-продавец) я думаю это намного меньше 5 секунд в идеале
миллисекунды
Роман Сохарев
@greabock
Jul 19 2015 17:48
@symbiosss а я вот думаю, что @jhaoda прав, и реализация должна подбираться согласно требованиям бизнес-процессов. Если отклик в 5 секунд удовлетворяет требованиям бизнеса, то незачем городить "реалтайм". Оповещение о звонке, который нужно совершить не "сию секунду" вполне вписывается в диапазон таких бизнес-процессов.
symbios_zi
@symbiosss
Jul 19 2015 17:49
@greabock а я не спорю с тем что если 5 секунд не критично, то можно использовать ))
@greabock и даже не спорю о том что реалтаймом может быть и год
JhaoDa
@jhaoda
Jul 19 2015 17:50
@symbiosss удивительно, а что же ты делал не далее, как 10 минут назад?
symbios_zi
@symbiosss
Jul 19 2015 17:50
@jhaoda я хотел сказать что в данном случае 5 секунд сложно назвать реалтаймом )
JhaoDa
@jhaoda
Jul 19 2015 17:51
Не, по второму кругу я не пойду...
symbios_zi
@symbiosss
Jul 19 2015 17:52
@lolylol т.е. 5 секунд уже не реалтайм? вот с этой фразой не был согласен. Человек переспросил почему "конечно". Ну вот я и ответил мое мнение.
Jamarolex
@Jamarolex
Jul 19 2015 18:18
Привет всем
Никто не может мне посоветовать качественную статью по Авторизации и RBAC ?
JhaoDa
@jhaoda
Jul 19 2015 18:41
@Jamarolex похоже, что никто. А что именно вызывает вопросы?
Роман Сохарев
@greabock
Jul 19 2015 18:46
@jhaoda я думаю, авторизация и RBAC XD
JhaoDa
@jhaoda
Jul 19 2015 18:47
Да хотелось бы понять, разделяет ли вопрошающий понятия аутентификации и авторизации, для начала
Роман Сохарев
@greabock
Jul 19 2015 19:08
@jhaoda ну все верно он спросил. RBAC - это частный случай авторизации =)
JhaoDa
@jhaoda
Jul 19 2015 19:08
@greabock уверен? Народ, в массе своей, эти понятия не разделяет
Nikita
@exotickg1
Jul 19 2015 20:41
Хмм, русский част живей, чем официальный
897 против 2012 юзеров
Vlad Shcherbin
@VladShcherbin
Jul 19 2015 20:42
@exotickg1 зайди в irc оф
Nikita
@exotickg1
Jul 19 2015 20:43
да как-то лень. Ну вообще да, я в курсе, там ирк по-популярнее будет
Vitaly
@Modifikator
Jul 19 2015 21:28
Подскажите стоящий пакет для внутрисистемных сообщений(нотификаций) по событиям
JhaoDa
@jhaoda
Jul 19 2015 22:12
@Modifikator встроенный механизм событий чем не устроил?
Vitaly
@Modifikator
Jul 19 2015 22:24
@jhaoda мне нужно что-то наподобии внутренней почты, но попроще, без переписки, просто висящее сообщение . Тоесть, наступило событие и вместо отправки юзеру сообщения на email, показываем в его профиле.
JhaoDa
@jhaoda
Jul 19 2015 22:26
Не понимаю я, что за страсть к пакетам... я еще ни разу не юзал ни один пакет, который бы обеспечивал решение какой-то бизнес задачи
Все пакеты хороши только на стадии прототипа
@Modifikator в чем проблема добавить таблицу и примитивный сервис, который будет писать в таблицу идентификатор юзера, текст, дату и факт прочтения? А ещё получать все непрочитанные сообщения для конкретного юзера.
Это реально полчаса делов
Ну и вьюхи с обвязкой
Vitaly
@Modifikator
Jul 19 2015 22:39
@jhaoda на словах полчаса, а в реале намного больше, в случае с пакетами это несколько минут, зачем писать одно и тоже? я вот не понимаю мазохизма-велосипедизма в программировании. реально ручками должны решаться только уникальные задачи - общая логика приложения.
JhaoDa
@jhaoda
Jul 19 2015 22:40
@Modifikator я тебе и объясняю — лично меня еще ни один пакет не устроил. И я сильно сомневаюсь, что у меня какие-то сверх уникальные задачи
Vitaly
@Modifikator
Jul 19 2015 22:48
а меня бы устроил, в данном случае это стандартный функционал