Laravel по-русски
Русское сообщество разработки на PHP-фреймворке Laravel.
Ты не вошёл. Вход тут.
Но есть проблема, после указания нескольких адресов получателя, и, если один из них не существует, письма не уходят вообще никому.
насколько он неверный? в плане формата неверный? потому что если все адреса валидные, то драйвер mail просто передаёт письмо в системный почтовик и доставка – это уже его проблемы. если там сам адрес не является адресом, то наверное где-то нужна валидация перед тем как вообще добавлять адрес в систему. накрайняк, если уже там куча мусора – перед отправкой можно отфильтровать мусор из списка, например с помощью array_filter и filter_var
Адрес полностью валидный. Имеется ввиду почта несуществующая. Если в массиве, скажем, из 5 писем один не является реальным, то остальным четырем адресатам письма не уходят. Если драйвер почтового сервера поставить в log, то видим в списке адресатов все 5 адресов с текстом письма. Возможно, что сам почтовый сервер настроен таким образом, что сначала проверяет адреса, и если какой-нибудь не существует, не рассылает всю цепочку?
Добрый день всем!
В ларавеле осуществляю рассылку писем посредством драйвера mail.
Но есть проблема, после указания нескольких адресов получателя, и, если один из них не существует, письма не уходят вообще никому.
Сам почтовый сервер в логах не выдает ошибок и очереди на отправку нет.
Возможна настройка, чтобы такие ящики игнорировались и на правильные адреса уходило сообщение?
Я всего лишь спросил совета, как мне в сыром запросе адекватно вставить переменную в условие IN().
Proger_XP, спасибо, такое предложение в инете встречал, но думал, что есть что-то типа плейсхолдеров, как в некоторых библиотеках работы с бд))
В моем случае, это первое знакомство с laravel, проект большой, но не биллинг для мтс, как кто-то упомянул.
Проект веду я один и поддерживать его буду я, а если после меня кто-то залезет в код не составит никакиех трудов в нем разобраться ибо каждый запрос обернут в функцию, название которой говорит само за себя. Не считаю это каким-то "непрофессионализмом" или чем-то другим. Сложно мне начать с ORM сразу на боевом проекте, все эти связи.. Я себя чувствую ограниченным в движениях. Работаю с postgres , есть выборки по json, массивам со сложными условиями.
Было сказано про "сырой запрос === увольнение". Иными словами, если ты рисуешь зеленым карандашом, ты не сможешь работать с нами над картиной пустыни, потому что мы рисуем синими карандашами. hzone, ты по многим моим топикам давал подсказки по laravel и спасибо большое. Но, как было бы полезнее провести своей команде мастер-класс и вывести на должный уровень, что делает руководителя, хорошим ![]()
Масса людей пользуется ORM и конструкторами и мало понимает вообще как оптимизируется сам запрос. Дискуссий в интернете полно по сырым запросам и ORMам. Есть плюсы и минусы, каждый выберет подходящий вариант. Говнокод, вообще понятие субъективное по большинству своему, ибо это первое, что вы гворите, видя проект предыдущего программиста)
В доках ларавеля, есть текст для сырых запросов:
"Привязка параметров обеспечивает защиту от SQL-инъекций." Так как правильно считать, обеспечивает, но не так сильно как хотелось бы?
Добрый день.
При формирование сырого запроса, возникает ошибка.
Запрос в коде выглядет так:
// SELECT * FROM categories WHERE category_id IN (480,479)
DB::select('SELECT * FROM categories WHERE category_id IN (?)', [implode(',', $сategories)]);
Вылетает ошибка
Invalid text representation
: 7 ERROR: invalid input syntax for integer: "480,479" (SQL: SELECT * FROM categories
WHERE category_id IN (480,479))</span>
Полагаю, ошибка возникает, когда laravel хочет подставить вместо ? строку "480,479", которая по себе не является int.
Как передать массив id для селекта в таком случае, в чем подковырка?
Fridz пишет:Спасибо, буду искать решение)
А чем описанный мной способ не подошел?
Алексей, не заметил почему-то сразу.. Да, все в точку, то что и искал. Спасибо
Спасибо, буду искать решение)
Я копался в его документации, но не нашел нужного. Мне необходимо элементарное типа formating(inFormat, OutFormat, date)
Подскажите, как классом Carbon дату в формате y/m/d форматировать в d.m.Y в Blade шаблоне.
Без использования Eloquent ORM
Где оно должно быть перехвачено? И ошибок много бывает и варнинги и ноутисы и фатал
Не знаю, не спрашивал бы.
Подскажите, вместо страницы обработки ошибок, если случается ошибка в коде, возможно, чтобы отдавал какое-нибудь представление вместо Whoops, looks like something went wrong?
да, спасибо
Добрый день. Как в последней версии laravel перенаправить все сообщения, которые должны отсылатсья по почтовым ящикам в журнал логирования? И письма будут в общем файле лога выводиться? Сейчас в конфиге mail.php параметр pretend отсутствует.
вы были правы. спасибо. локаль была установлена русская изменил на английскую заработало. надо искать как все таки реализовать русскую локализацию. Вам большое спасибо
Ее не нужно придумывать) Она уже реализована, просто скопируй папку lang/en to lang/ru и спокойно переводи параметры на русский язык
Сообщение вида 'The :attribute field is required.' берется из файла локалей resources/lang. Вероятно у тебя в настройках локаль указана, которая не реализована в этой папке.
бы предложил на стадии разработки писать всё в контроллер, а перед релизом выделить время и распихать уже по полочкам.
так как в процессе проектирования проектируется отнюдь не 100% архитектуры, и даже не 60, в противоположность состоянию на релиз.
Имеет место быть, конечно. Даже в большом проекте, время от времени потребуется уделить время на перестановку кода. Но хочется, хотябы на этапе проектирования базовые вещи запихнуть туда, где они и должны быть)
>> Контроллер должен быть тонким.
Всю логику выносишь в пакеты, или в модули, или в отдельные классы. В контролере только вызов методов, присваивание переменных и передача во вьюхи.
Поначалу это кажется неудобным и совершенно не нужным, но потом привыкаешь и начинаешь видеть пользу.
Хотя наверно про всю логику это чересчур. Часть можно оставить в контроллере, когда а) кода мала б) он точно нигде больше не будет использоваться
А то, что многие пишут про шаблон проектирвоания репозиторий?
DBR, спасибо!
Блин, поделится кто-то опытом?)) Как же самое отзывчевое русское сообщество, что и подкупило в изучение сего фреймворка?
Так же, куда вынести класс, который получает набор полей, по которым отрисовывает html-блок (столбцы фильтров) и отдает их вызывающему методу. так же класс имеет свой файл конфига.
Добрый день. Изучаю laravel 5, до этого с фреймворками дело не имел. Занимался собственными самописнымы штуками + работал счужими такими же самописными. Хочется лучше понять, что куда разложить. В уроках в основном показываются базовые вещи, где контроллер поулчает данные из БД и передает их во вьюер, а тот делает голую обработку без условий и рендерит шаблон. Все это классно, но реальные проекты далеки от базовых-обучалок. Много кода, много логики. И куда это все поместить, пока непонятно. Поделитесь пожалуйста опытом организации кода во фреймворке.
К примеру, интересуют такие вещи:
- Контроллер должен быть тонким. Модель работает с БД. Представление отрисовывает по данным html код. Встает вопрос - когда контроллер получает какие-то данные, их требуется еще сложить\удалить\поделить\получить какие-то промежуточные html-блоки с последующей вставкой в основной вид. Где организовывать обработку всей этой логики? На сколько контроллер может быть "толстым"?
- Есть набор своих наработанных функций за все это время. Как их можно подключить в проект. Прошу, назовите что это будет в ларавел, дальше разберусь по документации))
PS. И если можно, пару слов о сервис-провайдерах. Прям два слова, которые объяснят что это и для чего)) До этого не имел дела с таким понятием.
Спасибо