These are chat archives for LaravelRUS/chat

24th
Jul 2016
Denis Mazur
@lans8097
Jul 24 2016 01:11

Доброго времени сутак.
В общем столкнулся с проблемой как правильно пройти рекурсию по средствам ORM
Суть проблемы в том что то обект то колекция обектов на выходе и не магу понять как оптимально это реализовать.
Получилось очень не красиво и избыточно.
https://gist.github.com/lans8097/f4a4e5ef0e86448db153b82c8dd0f740
На выходе получается просто

→Главная
—→О нас
——→Тест
——→Тестовый раздел 2
———→waefwef
—→Нагрузочный раздел
—→blabla

Может есть какой-то более грамотный способ ?

Да можно просто сделать полную выборку из базы и работать тупо с масивом, но будет ли это правильно ?

KarmaBot
@KarmaBot
Jul 24 2016 01:11
@lans8097, чтобы показать длинный листинг кода желательно использовать pastebin-сервис, например gist.github.com или laravel.io/bin.
JhaoDa
@jhaoda
Jul 24 2016 01:14
@lans8097 видел, о чем тебя бот попросил?
Denis Mazur
@lans8097
Jul 24 2016 01:15
@jhaoda да
JhaoDa
@jhaoda
Jul 24 2016 01:16
@lans8097 делаешь?
@lans8097 ссылку на гист заверни в код
Denis Mazur
@lans8097
Jul 24 2016 01:20
@jhaoda спасибо
JhaoDa
@jhaoda
Jul 24 2016 01:20
@lans8097 я понимаю, что правила читают только дураки, а настоящие потсоны не признают никаких правил, но всё же — http://laravel.su/articles/nine-circles-of-chat
Denis Mazur
@lans8097
Jul 24 2016 01:23
@jhaoda Ознакомлен впредь буду следовать букве закона.
JhaoDa
@jhaoda
Jul 24 2016 01:25
@lans8097 ещё могу сказать, что твой код ужасен. Используй любую IDE, автоформатирование и прочитай про PSR-2
Denis Mazur
@lans8097
Jul 24 2016 01:39
@jhaoda Использую PhpStorm 9.
вопрос отпал
@jhaoda Спасибо
Maxim
@Big-Shark
Jul 24 2016 01:42
карма
KarmaBot
@KarmaBot
Jul 24 2016 01:42
@Big-Shark, Ваша карма +882. Вы благодарили 156 раз.
  • Достижения: "Находчивый", "Любитель сладкого", "Благодетель", "Благодарный", "Нахлебник", "Рэмбо", "Вопрошайка", "Красавчик"
Coryphaeus
@cvdeby
Jul 24 2016 05:37
Здравствуйте, есть вопрос по реализации Request/dispatcher/route/Response цикла. Реализую MVC паттерн, в целях изучения.
KarmaBot
@KarmaBot
Jul 24 2016 05:37
Приветствую тебя, @cvdeby!
Coryphaeus
@cvdeby
Jul 24 2016 05:42
Так вот, никак не могу до конца разобраться в том, как это все работает. То, как я понимаю это сейчас : $_REQUEST(или же $_POST, $_GET) оборачиваются в class Request, создается класс Response, классы Request и Response отправляются в Dispatcher, который отправляет Request в Route и возвращает Response, затем отправляется Response.
Coryphaeus
@cvdeby
Jul 24 2016 07:27
Кто-нибудь самостоятельно реализовавал MVC паттерн?
Dave
@aios
Jul 24 2016 07:33
@cvdeby а зачем?
Coryphaeus
@cvdeby
Jul 24 2016 07:34
В целях изучения
@aios
Dave
@aios
Jul 24 2016 07:34
@cvdeby в целях изучения можно юзать уже готовый mvc
@cvdeby а писать костыль - который ты даже использовать нигде не будешь.
Coryphaeus
@cvdeby
Jul 24 2016 07:35
Уже реализовал Controller->Model->DB
и FrontController, который парсит REQUEST_URI и затем по нему вызвает контроллер
Можно и использовать для небольших проектов.
Ну не использовать, а писать снова, более чистый и понятный код)
Dave
@aios
Jul 24 2016 07:36
для небольших проектов я юзаю микрофреймворки + ORM
Coryphaeus
@cvdeby
Jul 24 2016 07:37
Для понимания пишу
Это в ларавел просто $request->all(); или что-то в этом роде. Хочу понимать конструкцию.
@aios Какой микрофреймворк можешь посоветовать? Покопаю его структуру)
Например раньше я думал, что магия composer - это то, что он загружает классы по неймспейсам. Оказалось автолоадер не так уж и сложно реализовать.
Точнее он есть в самом php
выбирай любой
Coryphaeus
@cvdeby
Jul 24 2016 07:43
@aios Я имел ввиду, каким микрофрейморком пользуешься для своих проектов :smile:
Dave
@aios
Jul 24 2016 07:44
@cvdeby Иногда Silex иногда Slim
Nuzsk
@Nuzsk
Jul 24 2016 07:55
@cvdeby хорошее начинание, продолжай, это очень поможет
@cvdeby можешь за одно попробовать написать свой шаблонизатор с подключаемыми хелперами и простенький AR
Dave
@aios
Jul 24 2016 07:58
@Nuzsk а как это поможет?
Nuzsk
@Nuzsk
Jul 24 2016 07:59
@aios лучше понимаешь, почему существующие решения написаны так а не иначе, что от них ждать и где расширять
ну и тратить 1 день, чтобы лучше понимать всю жизнь - это выгодно
Dave
@aios
Jul 24 2016 08:00
@Nuzsk мне после давнокода на DLE, Joomla, WP, Typo3 почему то не нужно было писать что то свое что бы понять MVC Во всех существующих на тот момент фреймворках. и проектах.
@Nuzsk я не потратил один день - но почему то думаю что понимаю все эти вещи не хуже вас)
Nuzsk
@Nuzsk
Jul 24 2016 08:01
@aios если так - то рад за тебя, но вообще сомневаюсь
Dave
@aios
Jul 24 2016 08:01
@Nuzsk сомневаешься в чем?
Coryphaeus
@cvdeby
Jul 24 2016 08:01
@aios MVC - достаточно простой паттерн, однако его реализация намного сложнее понимания.
Nuzsk
@Nuzsk
Jul 24 2016 08:01
@aios что без велосипедов что-то можно понять на хорошем уровне
ты пока только использовал чужое API
Dave
@aios
Jul 24 2016 08:02
@Nuzsk Да но это не значит что я не копался в его недрах.
@Nuzsk Я вообще очень ленивый - вместо того что бы писать свое - я лучше выверну на изнанку чужое.
Nuzsk
@Nuzsk
Jul 24 2016 08:03
@aios копаться - совершенно иное
там уже все решения приняты за тебя
Oleg
@Malezha
Jul 24 2016 08:03
Давайте похоливарим, что в бэкенде не может быть мвц?) Нужен Серафим и АДР)
Nuzsk
@Nuzsk
Jul 24 2016 08:03
о нет
@Malezha о нет!
Dave
@aios
Jul 24 2016 08:03
нет пожалуйста.
@Malezha молю не нужно.
Nuzsk
@Nuzsk
Jul 24 2016 08:04
@aios в общем ты не сможешь до конца понять - "почему так" и "как надо", если не писал сам
Dave
@aios
Jul 24 2016 08:04
@Nuzsk боюсь я живу сейчас в таком потоке времени - что мне это уже не понадобиться..
Nuzsk
@Nuzsk
Jul 24 2016 08:05
@aios зависит от задач
Dave
@aios
Jul 24 2016 08:05
@Nuzsk ушел немного момент когда ты мог так сказать - а я бы наверное задумался.
Nuzsk
@Nuzsk
Jul 24 2016 08:14
@aios у меня тут интересный пример придумался - что ты будешь делать, если тебя кинули на большое дорогое легаси из говна и палок и его нужно потихоньку рефакторить\исправлять?
Dave
@aios
Jul 24 2016 08:17
@Nuzsk не поверишь - сейчас так и произошло.
@Nuzsk ну точнее 3 недели назад.
Nuzsk
@Nuzsk
Jul 24 2016 08:18
@aios ну вот ты туда чужое готовое решение не факт, что втащишь
придется приводить в порядок то что есть
Dave
@aios
Jul 24 2016 08:18
@Nuzsk у них был легаси из зоопарка, Zend + Legacy и симбиоз с WP
ибо авторизацию они использовали от вп
@Nuzsk тебя не заботит что я говорю в прошедшем времени?
Nuzsk
@Nuzsk
Jul 24 2016 08:19
@aios а что это должно значить ?
решил проблемы? уволился?
сделал rm -rf и пишешь с нуля?
@Nuzsk http://prntscr.com/bwsny9 часть 2
Nuzsk
@Nuzsk
Jul 24 2016 08:21

сделал rm -rf и пишешь с нуля?

this?

Dave
@aios
Jul 24 2016 08:21
@Nuzsk по сути да.
Nuzsk
@Nuzsk
Jul 24 2016 08:21
погугли "проблема второй системы"
Nuzsk
@Nuzsk
Jul 24 2016 08:22
если это достаточно большой проект - то к нормальному решению ты выйдешь ооочень не скоро
и скорее всего то что выйдет будет не лучше того что есть
Dave
@aios
Jul 24 2016 08:24
@Nuzsk ну что же.. если об этом так уверенно говоришь)
Nuzsk
@Nuzsk
Jul 24 2016 08:24
@aios а на этом любой споткнется, я бы тоже
Dave
@aios
Jul 24 2016 08:24
@Nuzsk я тебе так скажу - если есть система которая приносит деньги, которая работает в реальном времени и которую нельзя трогать что бы переписать. Уже переписана давным давно.
@Nuzsk все остальное просто Давнокод - который нужно выкинуть в любом случае. Я не говорю что я идеальный программист - но подходы которые использовались в легаси этого проекта- это жуть в полоску.
Nuzsk
@Nuzsk
Jul 24 2016 08:25
@aios ты почитай статьи - почему у тебя не получится написать лучший код
Dave
@aios
Jul 24 2016 08:26
@Nuzsk я считаю что у меня получится все - потому что все в этой жизни зависит от нас - а не от каких то 3-е сортных статей.
Nuzsk
@Nuzsk
Jul 24 2016 08:27

@aios okay, http://webkomora.com.ua/ru/articles/web/management/man-month/5.html

мифический человеко-месяц

Dave
@aios
Jul 24 2016 08:27
если кто то столкнулся в какой то проблемой и не в состоянии ее решить - то это не значит что все будут не в состоянии ее решить.
Nuzsk
@Nuzsk
Jul 24 2016 08:27
3 сорт :smile:
это классика, бро
Dave
@aios
Jul 24 2016 08:28
@Nuzsk пусть будет по твоему.
@Nuzsk я просто думаю что бы придти к такому же - мне нужно мыслить как тот который написал этот давно код - а я так не мыслю - все люди мыслят по разному. ибо мы такими бы разными не были если бы мыслили одинаково. Так вот не мысля как тот - я не напишу такой код. Отсюда, я не приду к решению даже близкое к тому что дал он.
Nuzsk
@Nuzsk
Jul 24 2016 08:33
@aios дело не в близости а в том - что в существующем ныне коде заложено огромное количество бизнес требований, которые не видны с первого и даже со второго взгляда, автор изначального кода тоже не сразу пришел к ним
в итоге ты не сможешь повторить на должном уровне ту, изначальную легаси систему - пока сам первый раз не пройдешь этот путь
ну и плюс пройдешься по всем тем же граблям, что и изначальный автор
Dave
@aios
Jul 24 2016 08:40
@Nuzsk я уже.
только у него это заняло полгода. а у меня 3 недели.
сегодня у меня как раз деплой на 70%. Бекенд полностью завернут - а за фронт я еще не брался :worried:
Nuzsk
@Nuzsk
Jul 24 2016 08:41
@aios да вот нет, все еще впереди. в конце узнаешь - что оказывается вон та кнопка оказывается работала по суперхитрому алгоритму и влияла вон на то дерево
но изначально в старом легаси коде ты не разглядишь эту функциональность )
Dave
@aios
Jul 24 2016 08:41
@Nuzsk да было это все. всю такую шнягу я заставил его рассказать мне сразу. потому как он продакт менеджер.
@Nuzsk заканчивай заливать. я понял к чему ты клонишь. к тому что если тебя кинут в легаси и зоопарк ты тупо поймаешь этот свой "классический" эффект.
Nuzsk
@Nuzsk
Jul 24 2016 08:43
@aios ага. более того - достаточно объемное легаси - не хватит ни сил ни средств переписать в одиночку с нуля
Dave
@aios
Jul 24 2016 08:43
@Nuzsk ну не знаю.. значит такое отношение и желание работать.
Nuzsk
@Nuzsk
Jul 24 2016 08:44
@aios дело не в отношении, это достаточно самонадеянно - считать себя сильно лучше предыдущих программистов
то что 3 средних программиста медленно пилило 2 года - не может быть без потерь переписано 1-2 за то же время, чтобы не растерять функциональность
Dave
@aios
Jul 24 2016 08:50
@Nuzsk у тебя есть свое субъективное - пока у тебя не было практики. Вот потрещишь 6 лет на фрилансе - тогда и поговорим. Тогда у тебя и опыт в зоопарках будет. И чушь нести перестанешь - о том что есть что то невозможное.
Nuzsk
@Nuzsk
Jul 24 2016 08:51

@Nuzsk у тебя есть свое субъективное - пока у тебя не было практики. Вот потрещишь 6 лет на фрилансе - тогда и поговорим. Тогда у тебя и опыт в зоопарках будет. И чушь нести перестанешь - о том что есть что то невозможное.

@aios а при чем тут фриланс?

Dave
@aios
Jul 24 2016 08:51
@Nuzsk разнообразие. а не на дядю - на одном проекте - на одном стеке.
Nuzsk
@Nuzsk
Jul 24 2016 08:51
@aios я каждый раз меняю стек
Dave
@aios
Jul 24 2016 08:52
@Nuzsk 1 компонент? или все?
Nuzsk
@Nuzsk
Jul 24 2016 08:52
@aios все
мне скучно сидеть на одном
Dave
@aios
Jul 24 2016 08:52
и мне. тогда о невозможности чего идет речь?
о том что нельзя переписать существующую бизнес логику и вывести ее на новый уровень расширяемости?
Nuzsk
@Nuzsk
Jul 24 2016 08:52
@aios о невозможности переписать старую систему без потерь и получить лучшее решение - с первого раза за то же время
просто не получится
Dave
@aios
Jul 24 2016 08:53

@Nuzsk

это достаточно самонадеянно - считать себя сильно лучше предыдущих программистов

получится. и даже больше. Я уверен мой работодатель будет доволен.

Nuzsk
@Nuzsk
Jul 24 2016 08:53
@aios значит его устраивает потеря функциональности\поведения или он выделил больше времени
Dave
@aios
Jul 24 2016 08:54
@Nuzsk сорян мне пора пилить дальше - я тебя услышал.
@Nuzsk но не согласен с тобой во всех смыслах) имей это ввиду.
Nuzsk
@Nuzsk
Jul 24 2016 08:54
ок )
Dave
@aios
Jul 24 2016 08:54
епт..
мы не в личке общались?
Nuzsk
@Nuzsk
Jul 24 2016 08:54
нет
Dave
@aios
Jul 24 2016 08:54
йода порежет....
Nuzsk
@Nuzsk
Jul 24 2016 08:55
а с чего бы? адекватный разговор по теме
Dave
@aios
Jul 24 2016 08:55
он такое не переносит) тут не упомянут ларавел)
Taras Lisennk
@Lisennk
Jul 24 2016 10:04

Всем привет.

Сморите, в Request мы можем получить модуль текущего юзера вот так:

$request->user();

А если у меня кастомный реквест, то как во таким образом на основе данных реквеста отдавать нужную мне модель?

KarmaBot
@KarmaBot
Jul 24 2016 10:04
@Taras-S, здравствуй.
Taras Lisennk
@Lisennk
Jul 24 2016 10:11

Пока у меня идея определить в реквесте 2 метода

public function authorize()
    {
        if ($this->input('something') {
            $this->myModel = MyModel::find($this->input('something'));
            return true;
        }
    }

public myModel {
       return $this->myModel;
}

Тогда к этому можно будет обращаться аналогичным образом. Только что-то мне подсказывает, что в Laravel за этим скрыта какая-то магия и самому определять ничего не нужно

Coryphaeus
@cvdeby
Jul 24 2016 10:13
@Taras-S Извиняюсь, а для чего может использоваться кастомный Request?
Taras Lisennk
@Lisennk
Jul 24 2016 10:13
ну как кастомный
extends Request
долго объяснять
Dave
@aios
Jul 24 2016 10:14
@Taras-S так а зачем тебе в реквесте модель?
Taras Lisennk
@Lisennk
Jul 24 2016 10:14
в кратце, не совсем обычный протокол
поэтому нужен кастомный реквест
Coryphaeus
@cvdeby
Jul 24 2016 10:15
По логике, Request должен содержать данные запроса, даже если ты хочешь сделать редирект с кастомным реквестом, можно использовать тот же реквест.
Taras Lisennk
@Lisennk
Jul 24 2016 10:15
ну так он и содержит данные запроса
Dave
@aios
Jul 24 2016 10:15
@Taras-S не совсем обычный протокол это какой? Http by Taras?
Taras Lisennk
@Lisennk
Jul 24 2016 10:15
просто там параметры передаются необычным образом и обычный Request их не обработает
Http by Slack ))
Dave
@aios
Jul 24 2016 10:16
@Taras-S взял проект на создание бота под слак?
Taras Lisennk
@Lisennk
Jul 24 2016 10:16
чо вы пристали, там оправдан кастомный Request полностью
да, я о нем тут писал уже выше
мы тут же и решили, что Request кастомный подойдет
Dave
@aios
Jul 24 2016 10:16
@Taras-S мне кажется я даже знаю у кого.
Taras Lisennk
@Lisennk
Jul 24 2016 10:16
@SerafimArts вроде бы
Dave
@aios
Jul 24 2016 10:17
@Taras-S кто мы) в любом реквесте есть данные- кастомный это черт знает что)
Taras Lisennk
@Lisennk
Jul 24 2016 10:17
ууууу
ща покажу
вот он
там всё норм
Dave
@aios
Jul 24 2016 10:18
вау.. 2 новых метода для распарса Некоего реквеста от слак.. браво.
@Taras-S это твой кастомный реквест?
@Taras-S окей предположим ты из пушки по воробьям стреляешь - что с этим "Кастомным" не так?
Taras Lisennk
@Lisennk
Jul 24 2016 10:18

Да.

И мне нужно чтобы я потом мог в контроллере или каком-то своем сервисе получить текущую модель вот так
$request->myModel();
сейчас такое по-умолчанию работает с юзером
$request->user();
но MyModel это не юзер, но всё равно было бы очень удобно получать его вот так

Coryphaeus
@cvdeby
Jul 24 2016 10:19
Ему надо модель привязать к нему
Nuzsk
@Nuzsk
Jul 24 2016 10:19
ну а почему бы и нет? вроде аккуратненько
Maxim
@Big-Shark
Jul 24 2016 10:19
@Taras-S так и в чем проблемма то?
Dave
@aios
Jul 24 2016 10:20
@Big-Shark мне кажется у него не хватает - в цепи звена.
JhaoDa
@jhaoda
Jul 24 2016 10:20
Проблема в том, что бы открыть код класса Request и посмотреть
Nuzsk
@Nuzsk
Jul 24 2016 10:20
@aios лс посмотри
JhaoDa
@jhaoda
Jul 24 2016 10:20
Видимо, человек в блокноте пишет и знает только фасады
@Taras-S иначе я не понимаю, в чем проблема
Taras Lisennk
@Lisennk
Jul 24 2016 10:21
я смотрел Request и FormRequest и там нет метода user()
Coryphaeus
@cvdeby
Jul 24 2016 10:21
Посмотри в __call может там чего, по идее и не должно быть)
Taras Lisennk
@Lisennk
Jul 24 2016 10:22
ну понятно, что это магией сделано
в ядре
JhaoDa
@jhaoda
Jul 24 2016 10:22
@Taras-S чо, правда нет?
А почему у меня есть?
Видать, какой-то у меня особый ларавел...
Taras Lisennk
@Lisennk
Jul 24 2016 10:23
хм
не может быть
сейчас проверю ещё раз 0_o
JhaoDa
@jhaoda
Jul 24 2016 10:23
Понятно, человек даже поиском по тексту пользоваться не умеет
Даже в сраном блокноте есть поиск
А в шторме есть Alt+F2
Taras Lisennk
@Lisennk
Jul 24 2016 10:24
ааааа
реально
капец
как я мог пропустить
@jhaoda @cvdeby @aios @Big-Shark спасибо
KarmaBot
@KarmaBot
Jul 24 2016 10:25
Спасибо (+1) для @jhaoda принято! Текущая карма +1067.
Спасибо (+1) для @cvdeby принято! Текущая карма +1.
Спасибо (+1) для @aios принято! Текущая карма +192.
Спасибо (+1) для @Big-Shark принято! Текущая карма +883.
Kirill Nesmeyanov
@SerafimArts
Jul 24 2016 10:28
@Taras-S а мне? =(
Taras Lisennk
@Lisennk
Jul 24 2016 10:29
@SerafimArts спасибо :3
KarmaBot
@KarmaBot
Jul 24 2016 10:29
Спасибо (+1) для @SerafimArts принято! Текущая карма +526.
Kirill Nesmeyanov
@SerafimArts
Jul 24 2016 10:29
@Taras-S юхуууу
халява
Mikail Aziev
@aziev
Jul 24 2016 10:38
Ребята, кто создал этот чат? И кто его теперь модерирует?
Taras Lisennk
@Lisennk
Jul 24 2016 10:38
будучи высокоразвитым ИИ, 1000 лет назад он сам себя создал
и теперь его модерируем мы -- рабы машины
JhaoDa
@jhaoda
Jul 24 2016 10:40
@aziev а что?
Mikail Aziev
@aziev
Jul 24 2016 10:41
@jhaoda просто интересно
JhaoDa
@jhaoda
Jul 24 2016 10:41
@aziev тебе прям фамилию надо знать?
Mikail Aziev
@aziev
Jul 24 2016 10:41
@jhaoda ника будет достаточно
JhaoDa
@jhaoda
Jul 24 2016 10:42
Кто-то из участников гитхаб-команды LaravelRUS его создал
Initial commit
Butochnikov committed on 11 Feb 2014
Mikail Aziev
@aziev
Jul 24 2016 10:45
точно, благодарю. я сам не додумался там посмотреть. получается кармабот отдельно от него существует?
JhaoDa
@jhaoda
Jul 24 2016 10:46
@aziev отдельно от кого? От чата? От Butochnikov'а?
Mikail Aziev
@aziev
Jul 24 2016 10:46
@jhaoda от чата
JhaoDa
@jhaoda
Jul 24 2016 10:46
@aziev это просто приложении, юзающее API гиттера
Taras Lisennk
@Lisennk
Jul 24 2016 10:48
вроде бы кармабот делал @SerafimArts
Mikail Aziev
@aziev
Jul 24 2016 10:49
@jhaoda теперь все понятно
@Taras-S судя по коммитам в основном он, но не только
Mikhail Sychev
@snutworks
Jul 24 2016 13:07

Всем привет! Есть два роута

POST | journal | journal.store | App\Http\Controllers\JournalController@store
PATCH | journal/{post_id} | journal.update | App\Http\Controllers\JournalController@update

Есть js который обрабатывает страницы создания и редактирования.
В этом js при сохранении новой сущности проворачивается:

$.ajaxSetup({
    url: '/journal/' + post.id,
    method: 'PATCH'
});

при повторном сохранении уже по /journal/post_id в отправляемых данных все есть, но во входящем реквесте в приложении (PostRequest) ни одного поля которые ушли в отправленной форме. Кто подскажет куда копать?

KarmaBot
@KarmaBot
Jul 24 2016 13:07
Будь как дома, @snutworks, я ни в чем не откажу. Много мануалов, коль желаешь, покажу :)
Dave
@aios
Jul 24 2016 13:08
PostRequest с методом PATCH - это конечно жестоко
Mikhail Sychev
@snutworks
Jul 24 2016 13:09
сущность Post
у нее есть реквест PostRequest
не самое удачное название, но всё же
JhaoDa
@jhaoda
Jul 24 2016 13:18
@snutworks файлы передаешь в PATCH-запросе?
Mikhail Sychev
@snutworks
Jul 24 2016 13:19

@jhaoda передаю, но даже без них не пашет, если ты про это:

    $.ajaxSetup({
        url: '/journal',
        method: 'POST',
        dataType: 'json',
        contentType: false,
        processData: false
    })

то оно сделано.

JhaoDa
@jhaoda
Jul 24 2016 13:20
@snutworks я про файлы, а не про «это»
Mikhail Sychev
@snutworks
Jul 24 2016 13:20
сначала при загрузке страницы выполняется этот сетап, а потом сетапом меняются урл и метод
JhaoDa
@jhaoda
Jul 24 2016 13:21
Симфони не умеет добывать файлы из PUT/PATCH
И весь запрос фейлит, и он выглядит пустым
А что ты там в сетапе нахреначил, что оно даже без файлов фейлится, то я не знаю
Mikhail Sychev
@snutworks
Jul 24 2016 13:22
а что делать если при обновлении поста я хочу ему фотку переписать?
JhaoDa
@jhaoda
Jul 24 2016 13:23
@snutworks страдать :) И использовать вложенные rest-контроллеры
Ivan Istomin
@Istom1n
Jul 24 2016 13:23
А в чем проблема использовать не патч
JhaoDa
@jhaoda
Jul 24 2016 13:23
@snutworks или передавать файлы как строки в base64
@Ivan-Istomin в желании соблюдать семантику, наверное
Mikhail Sychev
@snutworks
Jul 24 2016 13:25
@jhaoda ну на самом деле у меня на клиенте и есть base64, я и на клиенте перегоняю в фалы и засовываю в запрос, не true way?
@jhaoda
post-form.js:127 make request with:
    _token: zFP0JGexQ5OM8ZwCJ7A717Yzf3NQftDU3XF5JkUS
    category_id: 0
    title: фывафыва
    content: <p>фывафыва</p>
    private: on
    adult: false
JhaoDa
@jhaoda
Jul 24 2016 13:26
@snutworks ну почему, если оверхэд не страшен, то нормально. Из iOS, например, нельзя иначе послать несколько файлов даже POST-запросом, кроме как в base64, какие-то там ограничения платформы
Ivan Istomin
@Istom1n
Jul 24 2016 13:27
А вы _method не передаете?
JhaoDa
@jhaoda
Jul 24 2016 13:27
@Ivan-Istomin это аякс, чувак, нахрен там _method?
Mikhail Sychev
@snutworks
Jul 24 2016 13:28
@jhaoda на айосе сталкивался с этим да:(
Ivan Istomin
@Istom1n
Jul 24 2016 13:29
Ну да, в данном случае незачем
Mikhail Sychev
@snutworks
Jul 24 2016 13:31
@jhaoda ну значит не буду конвертить на клиенте, буду конвертить на сервере, но как по мне это бред, клиентов много, сервер один, хранить в базе прям base64 - бред
JhaoDa
@jhaoda
Jul 24 2016 13:32
@snutworks почему бред? Конвертанул на клиенте в base64, отправил, на сервере обратно в файл, сохранил
Mikhail Sychev
@snutworks
Jul 24 2016 13:34
@jhaoda потому что серверу надо принимать много запросов от многих клиентов и ему бы просто взять и переложить файлик а не заниматься конвертацией, нагрузка там, вот это всё
JhaoDa
@jhaoda
Jul 24 2016 13:34
@snutworks ну я же сказал, если оверхэдов не боишься
Тогда делай POST и не парься, дух семантики тебя простит :)
Mikhail Sychev
@snutworks
Jul 24 2016 13:38
@jhaoda но тогда придется для каждого ресурс контроллера дописывать, так?
Route::post('/model/{id}', ['as' => 'model.update', 'uses' => 'ModelController@update'])
JhaoDa
@jhaoda
Jul 24 2016 13:38
@snutworks ага
Dave
@aios
Jul 24 2016 13:38
@snutworks и че?
Mikhail Sychev
@snutworks
Jul 24 2016 13:39

@jhaoda ну это малая жертва учитывая что уже написано

Route::patch('/{post_id}', ['as' => 'journal.update', 'uses' => 'JournalController@update']);

там еще группа сверху, всё ок

@jhaoda спасибо, пойду дальше крутить
KarmaBot
@KarmaBot
Jul 24 2016 13:42
Спасибо (+1) для @jhaoda принято! Текущая карма +1068.
Roman
@fearrr
Jul 24 2016 13:55
Всем привет.
Связывался кто-то с магазинами автозапчастей? Может кто подскажет где найти базу кроссосов? Может у кого есть, готов приобрести..
KarmaBot
@KarmaBot
Jul 24 2016 13:55
@fearrr, и тебе привет ;)
Ivan
@Hunternnm
Jul 24 2016 13:55
@fearrr у тебя текдок?
@fearrr или он тебе нужен?
adminko
@adminko
Jul 24 2016 13:57
Подскажите Curl библиотеку адекватную на ваш счет
Ivan
@Hunternnm
Jul 24 2016 13:57
@adminko guzzle
Roman
@fearrr
Jul 24 2016 13:57
@Hunternnm нет текдока нет, на счет него думаем пока что. А с ним идет доступ к базе?
Ivan
@Hunternnm
Jul 24 2016 13:57
@fearrr в смысле доступ к базе?
Roman
@fearrr
Jul 24 2016 13:58
@Hunternnm Ну там вроде как доступ к АПИшке. Хотим на своей стороне сделать базу или это тупость?
Ivan
@Hunternnm
Jul 24 2016 13:59
@fearrr сек
@fearrr ПС у меня текдок в мускуле локально
This message was deleted
Roman
@fearrr
Jul 24 2016 14:02
@Hunternnm а ну вот вот, все же значит есть возможность. А за нее разовая оплата или ежемесячная?
Ivan
@Hunternnm
Jul 24 2016 14:02
@fearrr личку посмотри. Всё бесплатно
luptidu
@luptidu
Jul 24 2016 15:35

Имеется Storage::disk('uploads'); в котором корневая папка uploads/и так далее. И мне нужно воспользоваться функцией move и перенести файл с временной папки в папку uploads с новым хэшированным именнем. Но при прописывании полного пути к файлу во временной папки я ловлю ошибку.

Стоит ли использоваться для таких целей фасад Storage или лучше воспользоваться стандартной rename()?

А также вот имеется у меня подключенный диск, как я могу получить полный путь к этому диску? В документации я не нашел такой фукнции или все-таки вручную прописывать?

Dave
@aios
Jul 24 2016 16:43
@luptidu зачем тебе полный путь?
undercloud
@undercloud
Jul 24 2016 18:06
всем привет, подскажите https://laravel.com/docs/5.1/controllers#restful-resource-controllers чем отличается photo.create от photo.store в таблице
KarmaBot
@KarmaBot
Jul 24 2016 18:06
Не узнал тебя, @undercloud. Богатым будешь :)
Ivan
@Hunternnm
Jul 24 2016 18:07
@undercloud create - открывается страница с формой добавления. store - куда форма с предыдущей страницы пост-запросом шлет инфу
undercloud
@undercloud
Jul 24 2016 18:08
@Hunternnm а photo.edit и photo.update аналогично?
Ivan
@Hunternnm
Jul 24 2016 18:08
@undercloud да
undercloud
@undercloud
Jul 24 2016 18:08
@Hunternnm спасибо)
KarmaBot
@KarmaBot
Jul 24 2016 18:08
Спасибо (+1) для @Hunternnm принято! Текущая карма +205.
luptidu
@luptidu
Jul 24 2016 19:08

@aios к примеру у меня в папке app лежит файлик file.txt и мне его нужно перенести в папку storage/uploads, как будет правильно его перенести?

в смысле воспользоваться функцией Storage::move() или функцией rename()?

Ivan Istomin
@Istom1n
Jul 24 2016 19:10
Объясните пожалуйста, чем $request->input('name'); отличается просто от $request->name;
Mikail Aziev
@aziev
Jul 24 2016 19:18
@Ivan-Istomin отличие в удобстве, но 2й способ не всегда получится использовать, если например в имени параметра есть символы, которые не могут быть использованы у свойства объекта
Alexander
@Dualse
Jul 24 2016 19:19
@aziev К примеру?
Ivan Istomin
@Istom1n
Jul 24 2016 19:19
И все?
Mikail Aziev
@aziev
Jul 24 2016 19:22
@Dualse к примеру дефис
@Ivan-Istomin честно не знаю, может еще в чем-то отличие есть
Alexander
@Dualse
Jul 24 2016 19:23
@aziev Разве дефис в символ нижнего подчеркивания не переводится?
Mikail Aziev
@aziev
Jul 24 2016 19:35
@Dualse нет. проверил только что
Максим
@maxyc
Jul 24 2016 20:41
z ghj
я прогромист этова чата
Dave
@aios
Jul 24 2016 20:45
@maxyc погромист скорее.
Максим
@maxyc
Jul 24 2016 20:46
)
Максим
@maxyc
Jul 24 2016 21:34
Ребят. вы юзали кто phpStorm restfull api tester?
Dave
@aios
Jul 24 2016 21:53
@maxyc я юзал. юзабельно
Максим
@maxyc
Jul 24 2016 21:56

у меня странное поведение. GET Указываю в хосте http://localhost:8000/ в пути указываю /v1/device/register
жму энтер и путь пропадает до / и открывается главная

Указываю этот путь в хост. он зачем то копируется в путь, остается в хосте, и в итоге получается http://localhost:8000/v1/device/register/v1/device/register

глянул на видео в ютубе, у людей какое то более адекватное поведение

2016.1 стоит
Чушь какая то. поставил себе постман, но хотелось бы в шторме
Dave
@aios
Jul 24 2016 21:57
так обновись
Роман Сохарев
@greabock
Jul 24 2016 21:57

@Ivan-Istomin
1) $request->name. Не рекомендую использовать. Во-первых, ide будет ругаться. Во вторых фишка в том, что сначала он поищет переменную в файлах, потом в результате input()'а и если ее не будет, то попытается вытащить параметр роута с таким именем. Слишком неявно.

2) $request->get('name'). Ищет переменную сначала в кастомных атрибутах, потом в строке запроса потом в post

3) $request->input('name'). Ищет переменную сначала в post, потом в строке запроса (на самом деле, там объединение массивов, но суть та же)

Максим
@maxyc
Jul 24 2016 21:57
@aios да как раз потому и не обновлял,чтоб не словить новых ошибок как обычно ) ща гляну .2 конеш
Роман Сохарев
@greabock
Jul 24 2016 22:01
Вообще, что ларовский реквест, что симфони реквест (от которого ларовский расширяется) написаны ужасно. Жуткая каша.
Максим
@maxyc
Jul 24 2016 22:10
@aios да. версия оказалась глючной
Максим
@maxyc
Jul 24 2016 22:40
@aios тут еще?
Route::group(['prefix'=>'v1'], function(){
    Route::group(['prefix'=>'device'], function(){
        Route::post('register', 'DeviceController@register');
        Route::post('checkToken', 'DeviceController@checkToken');
    });
    Route::group(['prefix'=>'user'], function(){
        Route::post('sendConfirmationCode', 'UserController@sendConfirmationCode');
        Route::post('checkConfirmationCode', 'UserController@checkConfirmationCode');
        Route::post('saveProfile', 'UserController@saveProfile');
        Route::get('getProfile', 'UserController@getProfile');
    });
});
а как такое покомпактней записать можно? можно тупо путь на контроллер повесть жеж?
Ivan Istomin
@Istom1n
Jul 24 2016 23:02
@greabock спасибо большое за такой полный ответ)
KarmaBot
@KarmaBot
Jul 24 2016 23:02
Спасибо (+1) для @greabock принято! Текущая карма +411.
Dave
@aios
Jul 24 2016 23:23
@maxyc не понял вопроса.
Максим
@maxyc
Jul 24 2016 23:23
@aios ну можно ли как то не описывать каждое действие, а указать просто контроллер и роуты настроятся по методам контроллера сами
хотя врятли наверное. им же надо указывать какой метод доступа использовать
Dave
@aios
Jul 24 2016 23:24
где нибудь в твоих мечтах на 7-ом небе - возможно.
в реальности - сорян.
Andrei Sosnov
@atehnix
Jul 24 2016 23:28
@maxyc на Laravel 5.1 - можно. В 5.2 убрали.
Максим
@maxyc
Jul 24 2016 23:29
каки
Dave
@aios
Jul 24 2016 23:29
@atehnix а я помню соображал что же это за такой контроллер у роута..
Andrei Sosnov
@atehnix
Jul 24 2016 23:32
@maxyc А, не, не убрали. Пока просто deprecated. В 5.3 уберут. )