«phpClub» — архив тем ("тредов"), посвящённых изучению PHP и веб-технологий.
Аноним 2019/01/21 18:45:53  №1332067 1
Поясните пожалуйста за некоторые моменты MVC.

Допустим, есть какое-то стороннее апи, которое возвращает джсон. Я хочу на страничке вводить параметр, который пойдёт в URL, потом по этому URL будет проведён запрос к апи, я получу в объект джсона, и ответ я хочу записать в базу данных.

У меня должен быть один view с текстовым полем и кнопкой, откуда информация передаётся в контроллер, контроллер передаёт параметр в model, там выполняется запрос к апи. А вот дальше я не знаю, как это должно работать. Создавать ещё одну модель, куда будет передаваться джсон и который будет записывать инфу в БД через элоквент? Или всё делать в одной модели? Как правильно, памагити!!111
Ответы: >>1332089 >>1332127
Аноним 2019/01/21 19:12:38  №1332089 2
>>1332067
Ты должен решать проблемы применением паттернов, а не умножать их. Даже так - ты должен решить проблему, а паттерн нужен, чтобы объяснить другим как ты ее решил. В твоем ларавеле даже есть возможность сразу в роуте вьюху прописать. Т.е ты не обязан всегда MVC в голове держать.
Ответы: >>1332092 >>1332101
Аноним 2019/01/21 19:19:25  №1332092 3
>>1332089
Тогда что мне делать конкретно в моем случае? С мвц или без него, мне важно понять как правильно в этом конкретном случае.
Ответы: >>1332093 >>1332104
Аноним 2019/01/21 19:22:18  №1332093 4
>>1332092
И в чем тогда смысл вопроса? Лепи чтобы работало. :)
Ответы: >>1332103
Аноним 2019/01/21 19:38:35  №1332101 5
>>1332089
ООП головного мозга. Паттерны наше все.
Аноним 2019/01/21 19:41:52  №1332103 6
>>1332093
Чтобы работало я слепил бы на коленке в одном пхп файле. Но я собираюсь выкладывать в общий доступ, а значит моя задача сделать ПРАВИЛЬНО (я уже третий раз повторяю это слово, а не слово АБЫ РАБОТАЛО). Если не можешь помочь, то зачем овтетчаешь?
Ответы: >>1332106
Аноним 2019/01/21 19:42:17  №1332104 7
>>1332092
В программировании нет правильного или неправильного. Это творческая профессия. Твори.
Ответы: >>1332107
Аноним 2019/01/21 19:44:42  №1332106 8
>>1332103
>моя задача сделать ПРАВИЛЬНО
Ты выбрал не ту профессию значит. Иди в физику или химию, хотя и там есть элемент творчества, особенно в химии.

Лучше говорить не правильное решение, а приемлемое. Любое решение приемлемо, если оно хотя бы работает. А дальше его можно улучшать постепенно. Эволюция.
Ответы: >>1332107
Аноним 2019/01/21 19:46:11  №1332107 9
>>1332106
>>1332104
Я и так физик (точнее механик), а мвц учу ради своего маленького проекта. И как я должен его учить, если я запутался, а ответ мне дать не могут?
Ответы: >>1332115 >>1332119
Аноним 2019/01/21 19:57:53  №1332115 10
>>1332107
короче сове
1. делаешь штобы работало
2. (опционально) переделываешь, шоб было красиво/быстро
3. (опционально) идёшь нахуй из профессии
Ответы: >>1332117
Аноним 2019/01/21 19:59:13  №1332117 11
Аноним 2019/01/21 19:59:48  №1332119 12
>>1332107
Тебе же говорят, не бывает правильного и не правильного в программировании. Это сугубо творчество. Делай как понимаешь сам. Если тебе сказать делай так или так, то ты ничему не научишься. Кто просто повторяет, становится макакой. Учись думать. Принимать решения. Пробовать разные варианты. Для инженера это самое главное.

Спроектировать, собрать, найти слабые места и улучшить, - вот работа программиста-инженера.
Аноним 2019/01/21 20:05:54  №1332127 13
>>1332067
Я бы создал дополнительный класс, что-то вроде components/ApiHelper, передавал бы в него параметр, после чего он возвращал json который уже через модель записывался в базу.
Ответы: >>1332130 >>1332180
Аноним 2019/01/21 20:09:25  №1332130 14
>>1332127
Для чего там класс, если это можно сделать одной функцией?
Ответы: >>1332138
Аноним 2019/01/21 20:16:11  №1332138 15
>>1332130
Разделение ответственности. Работа с апи может меняться и обрастать дополнительным функционалом. Или потребоваться в другом контроллере.
Ответы: >>1332146 >>1332148
Аноним 2019/01/21 20:23:02  №1332146 16
>>1332138
А почему это нельзя сделать, когда придется разделить ответственность за дополнительный анал?
Ответы: >>1332156
Аноним 2019/01/21 20:26:32  №1332148 17
>>1332138
А что функция это не разделение ответственности? Ее можно сделать универсальной. СИКП почитай. Ты предлагаешь преждевременную оптимизацию. Это overengineering чистой воды. Сразу видно почерк адепта ООП. Использую, да по-больше, но не знаю зачем.
Ответы: >>1332156 >>1332326
Аноним 2019/01/21 20:33:03  №1332156 18
15159267633140.webm (1879, 320x240)
240x320
>>1332146
Потому что в твоем случае все обрабатываемые аналы считаются обычными. Условие для создания их как дополнительных не срабатывает.
>>1332148
Да ты же поехавший. Лапшу по всему проекту собирать потом легче будет? Очередной препод-теоретик их техникума в ебенях с нулем опыта пришел повыебываться.
Ответы: >>1332171
Аноним 2019/01/21 20:43:34  №1332171 19
B0JfbCnIYAAeEHO.png (206, 485x369)
369x485
>>1332156
Очередной ООПэшник порвался. Слабенькие вы какие-то.
Аноним 2019/01/21 21:03:22  №1332180 20
Ответы: >>1332184
Аноним 2019/01/21 21:07:21  №1332184 21
>>1332180
Молодец! Теперь у тебя будет на каждый пук по классу, которые даже инстанцировать не нужно.
Ответы: >>1332216
Аноним 2019/01/21 22:21:04  №1332216 22
>>1332184
Я благодарю не за содержание, а за тот факт, что он единственный ответил по делу. А хорош его совет или нет мне предстоит ещё определить.
Аноним 2019/01/22 05:04:44  №1332326 23
>>1332148
>Ты предлагаешь преждевременную оптимизацию
Класс наваять для этих дел - минутное дело. Зато потом голова болеть не будет, собирая всё это дело в одном месте.