Anonymous
уф
Dmitry
Всем привет, подскажите инструменты для автодеплоя кода через вебкухи гита. Всё, что находил, работает через контейнеры докера, а это в моем случае оверхед, заранее благодарен. Jenkins тоже не подходит
dmi
Dmitry
Dmitry
ну я не хочу писать свои велосипеды, мне надо быстро и просто интегрировать в текущие проекты
dmi
Dmitry
Dmitry
Dmitry
Dmitry
писать скрипт, который будет по рецепту заливать проект и перед этим делать необходимые процедуры?
Dmitry
Dmitry
ну сейчас у меня настроен deployer dep deploy dev ввожу и всё деплоится, но хочу чтобы по пушу деплой
Dmitry
у тебя где репозиторий лежит?
Dmitry
на битбакете
Dmitry
на битбакете
смотри где у тебя вебхуки там. создавай хук на определенной событие, в твоем случае на пуш
Dmitry
Причем здесь это?
Dmitry
в смысле?
Dmitry
мой вопрос был в поиске подходящего инструмента для автоматации деплоя и простой интеграции с популярными хостингами гит репозиториев, а включать вебхуки в настройках битбакета я в состоянии, спасибо
Dmitry
Dmitry
Alex
Есть форма. В поля формы отображаются данные из таблицы в БД по нажатию на кнопку. Кнопка называется "Следующая запись" из чего следует, что при каждом нажатии на кнопку необходимо отображать данные строчки из таблицы, где id больше предыдущего на 1. Пробовал через сессии, работает, но данные записываются в форму не только при нажатии на кнопку, но и при обычной перезагрузке страницы. Есть ещё вариант - использовать для этого всего js, но можно ли как-то обойтись без него, и без варианта с кривыми сессиями? Была мысль создать несколько одинаковых видов (тех самых форм) и в каждую записывать конкретные данные, вручную. Так, на мой взгляд, не очень разумно, потому что при сохранении новой записи в таблицу, придется как минимум 3 строчки кода в шаблон написать, но это уже не программирование вовсе... Подскажите, есть ли в Laravel возможность отображать данные в форму динамически (по нажатию кнопки "следующая запись") без использования js? Хочу сделать что-то получше варианта с сессиями...)
Alexandr
а чем плох js?
Alex
Изначально хотел без js, упёрся в то, что кроме сессий ничего не придумал. js не знаю, вплоть до того, что не в курсе как передать инкрементирующуюся переменную из скрипта js в шаблон blade...
Nik
Есть форма. В поля формы отображаются данные из таблицы в БД по нажатию на кнопку. Кнопка называется "Следующая запись" из чего следует, что при каждом нажатии на кнопку необходимо отображать данные строчки из таблицы, где id больше предыдущего на 1. Пробовал через сессии, работает, но данные записываются в форму не только при нажатии на кнопку, но и при обычной перезагрузке страницы. Есть ещё вариант - использовать для этого всего js, но можно ли как-то обойтись без него, и без варианта с кривыми сессиями? Была мысль создать несколько одинаковых видов (тех самых форм) и в каждую записывать конкретные данные, вручную. Так, на мой взгляд, не очень разумно, потому что при сохранении новой записи в таблицу, придется как минимум 3 строчки кода в шаблон написать, но это уже не программирование вовсе... Подскажите, есть ли в Laravel возможность отображать данные в форму динамически (по нажатию кнопки "следующая запись") без использования js? Хочу сделать что-то получше варианта с сессиями...)
а нахрена вот это все вообще? some.site/list/1, 2, 3, 100500
Nik
и нормальные гет ссылки сгенерить
Alex
Alex
Ну такая ерунда {{ "<script> variable </script>"}} не корректна, верно?)
Alexandr
не совсем понимаю - делаете запрос, получаете данные, складываете их в дом
Alexandr
нет?
Alexandr
оппробуйте от даннх плясать, которые вы получаете при отправке формы
Alex
Хорошо, спасибо)
Alex
Если до чего-то адекватного дойду, напишу к чему пришел😂
Алексей
Ребят, как сделать так, чтобы если валидация не прокатывает, клиенту отправлялся не HTTP-код с ошибкой, а 200 с ответом?
Nik
Алексей
Извини, а подробнее можно?
Nik
app/Exceptions/Handler.php:53 где-то тут
Алексей
Модифицировать ядро я не хочу. Думал, можно как-то через наследование сделать.
Nik
а где здесь про ядро?
Alexandr
и кто мешает наследоваться?
Anonymous
Чем тебе if($validator->fails()) {return response($data, 200)} не подходит? Или я что то не понял?
Алексей
Я валидирую через кастомный Request кастомными Rule`ами.
Nik
и как это противоречит выше сказанному? :)
Алексей
Просто непонятно, как кастомный Handler туда притулить.
Алексей
Через use?
Дмитрий
есть таблица news в таблие есть столбец - "cat_ids" где хранятся данные например, 43,443, что говорит нам что данная новость должна быть в категории #43 и #443
есть таблица cat_news в ней есть столбец - "cat_id"
есть таблица cat_news в ней есть столбец - "cat_id"
Нужно вывести список новостей и вывести данные (name, image) из таблицы cat_news но только по первому ид ( в нашем случае из стоки где cat_id = 43 )
Вопрос как вывести данные используя лару, да чтобы минимальным с минимальным кол-вом запросов в бд (сделать простой селект и протом через цикл в каждой итерации обращаться к бд не варик, слишком много запросов)
Дмитрий
Я так понимаю что рыть в сторону "Один ко многим", но может есть у кого ещё мысли?
Roma
Нормально реализовать многие ко многим через pivot-таблицу не вариант?
Anonymous
Что еще за cat_ids???
Anonymous
Тебе надо нормализацию сделать
Дмитрий
Нормализацию?
Nik
Дмитрий
Ребят поподробнее, что читать, куда смотреть, да же желально с примерами)) хочу научиться хорошо кодить и понимать что делаю))
Roma
У тебя отношение многие ко многим, как я понял - у новости может быть множество категорий и в категорию входит множество новостей. Читай, как такое отношение правильно реализуется вообще и в ларе в частности
SiZE
Дмитрий
Да все правильно, и задча вывести топчик новостей, где так же должна выводится название первой категории к которой относится данная новость. Может вообще логичнее храть данные из столбца cat_ids в таблице news в виде json? Хорошая ли это мысль?
SarcasmIO
Дмитрий
Фаулер это автор книги по архитектуре и проектированию приложений?)))
SarcasmIO
мне просто интересно какая подоплека к этим словами была, со стороны автора
SarcasmIO
когда он это посоветовал
SiZE
SarcasmIO
не не не, интересно просто вот ты хочешь научится читать, а я тебе говорю бери Толстого и читай
SarcasmIO
может стоит начать с "букваря" ?
SiZE
Чат он как-то нашел, букварь наверное тоже видел. Я так думаю :)
Дмитрий
Буквари, видели, читали и даже гуглить умеем)) немного))
Leonid
я использую laravel passport, но совершенно не понимаю, что даёт наличие secret и client_id в запросе на получение токена, потому у всех проектов, что я делал, я писал свой запрос, требовались лишь email и password для получения токена, а остальные параметры подставлялись сами на сервере и уже сервер сам себе на посылал запрос на сервер авторизации. Такую же штукуя сделал и когда кодил на джаве со спринговским oauth сервером.
Может кто для тупых объяснить, почему я делаю фигню и какой толк от этих secret и client_id от фронта при запросе на получение токена?
Oleh
Leonid
для api
Nik
я использую laravel passport, но совершенно не понимаю, что даёт наличие secret и client_id в запросе на получение токена, потому у всех проектов, что я делал, я писал свой запрос, требовались лишь email и password для получения токена, а остальные параметры подставлялись сами на сервере и уже сервер сам себе на посылал запрос на сервер авторизации. Такую же штукуя сделал и когда кодил на джаве со спринговским oauth сервером.
Может кто для тупых объяснить, почему я делаю фигню и какой толк от этих secret и client_id от фронта при запросе на получение токена?
твой пасспорт, это условный ВК. в вк есть приложения - клиенты. у этих клиентов есть креденшелзы. чтобы не передавать эти креденшелзы в открытом виде каждому приложению, придумали oauth2, который за тебя делает всю черную магию, а ты потом используешь только токен, который сгенерился в итоге. Клиент в случае пасспорта это аналог приложения в вк
Игорь
Игорь
Игорь
Leonid
Так я это и использую
'form_params' => [
'grant_type' => 'password',
'client_id' => $params['client_id'],
'client_secret' => $params['client_secret'],
'username' => $params['email'],
'password' => $params['password'],
'scope' => $params['scope'],
],
Просто client_id и client_secret заполняю сам, так как не понимаю их смысла.
Игорь
Игорь
client_id + client_secret по типу логина и пароля клиента
Leonid
А если мне оно не нужно?