Kingleonide
Да, это я знаю, просто не пойму как их конкретно можно применить, вот
Aleksey Y.
в мидлваре обычно проверки авторизации
Kingleonide
ааааа
Kingleonide
А потом отправка в контрллер вероятно?
Aleksey Y.
или, например, проверяешь был ли гет параметр в запросе и его значение
Aleksey Y.
если не было - кидает в эксепшен
Aleksey Y.
если было - пропускает к контроллеру
Aleksey Y.
прослойка перед твоим роутом
Aleksey Y.
ладн, мне за ребенком в садик ехать надо, если что тут много кто ответит)
Kingleonide
Да, я понял теперь предназначение мидлвара, спасибо за оказанную помощь, большое спасибо)
Bohdan >
Kingleonide
Не, в ларе это достаточно просто реализуется, но естественно можно всё усложнить, всё от задач зависит)
Kingleonide
А подскажите по php, возможно ли повторить итерацию в foreach?
на for я бы сделал так
for($i = 0; $i < 100; $i++){
if($error){
$i--;
}
}
Kingleonide
Но можно ли сделать подобное с foreach?
Пробовал костылить с prev(), но ничего не вышло, вероятно не так делал
Root
Hello all
invariance
hi, nice to meet you, how are you?
invariance
i'm very english man
Dmitry
Kingleonide
Закончится, если указать $Key=>$Value
Anton
А вот по такой теме может кто подсказать? Допустим есть скрипт, который рассылает письма, так же на проекте есть несколько партнеров (на самом деле скины типа) и вот надо письмо в нужном скине послать. Что сделал для сайта - написал свой FileViewFinder и типа подключил его через bind
Anton
$this->app->bind('view.finder', function ($app) {
$paths = $app['config']['view.paths'];
return new \App\Services\View\FileViewFinder($app['files'], $paths);
});
Kingleonide
и сделать условие на проверку кол-ва итераций
Anton
но когда мы в cli режиме и отправляем письма - люди могут менятся и надо из разных папок отправлять
Anton
то есть как-то достучаться к объекту \App\Services\View\FileViewFinder
Leonid
Мне к нескольким параметрам, которые могут быть в разных моделях c разными названиями, требуется применить один и тот же set мутатор. Есть ли какой-то нативный для ларавела способ это сделать?
Сейчас я только вижу вариант сделать в базовой модели массив вродe protected $applyMutators = ['my_param'] и написать метод, который будет добавлять мутаторы к объекту при инициализации.
Kingleonide
Но тут тоже двояко, потому что мы должны так-же инкрементировать $Key, в условии ошибки допустим, и он будет расти до бесконечности
Anton
делаю вот так - app('view.finder')->setFolder() - но когда дебажусь уже глубже - как будто не сетал ничего
Dmitry
Anton
шаблон перевоначально для всех один - скажем template.blade.php
Anton
просто в разных папках для разных партнеров
Kingleonide
Вероятно скажу глупость, а в чем заключается проблема достучаться к объекту?
Anton
по моему карту держать извращенно
Anton
а если у тебя инклуд внутри темплейта?
Dmitry
или там много шаблонов в папке?
Anton
и ты там мапу будешь держать?
Anton
или ифку огромную писать?
Anton
а так у тебя просто include() идет, который уже своими штатными вещами просто найдет папку и заинклудит
Anton
у тебя есть один контроллер
Anton
и вот он тебе рендерит одну страницу
Dmitry
мы про письма говорим? при отправке я просто выбираю какому партнеру отправить и смотрю какой шаблон подставить
Anton
Anton
если сделать как ты говорришь - мелкое исправление в одним письме - вперед править все шаблоны для всех парнеров
Dmitry
ну так, шаблон то разный. и именно он привязывается к партнеру
Anton
удачи
Anton
не
Anton
еще раз
Anton
вот письмо
Anton
контент - одинаковый
Anton
есть рюшки
Anton
если делать как ты предлагаешь - одно исправление в конктенте - и привет правка всех шаблонов для всех партнеров
Anton
в моем случае - только в 1 шаблоне надо поправить
Dmitry
я не понимаю наверное, у меня есть 20 партнеров, у всех разные шаблоны, а контент одинаковый, так?
Anton
примерно
Dmitry
тогда я не понимаю как изменения контента может повлять на все письма?
Dmitry
я например использую для контента переменные или метапеременные
Anton
Anton
письмо
Anton
шаблон один!!!
Anton
email.blade.php
Anton
в нем есть include('header')
Anton
для разных партнеров разных header
Anton
вот и все
Dmitry
вот теперь яснее
Dmitry
а сам шаблон на header как то влияет?
Anton
для веба (http запрос) все решается тем что в процессе одного запроса у тебя всегда один партнер
Anton
а в cli - могут быть разнве
Anton
в какой папке искать решает FileViewFinder (так сделано в ларавель)
Anton
Но я подменил на свой FileViewFinder, который учитывает Partner
Anton
и сначала смотрит в папках партнера и потому уже в дефолтовых папках
Dmitry
я бы не делал инклуд на твоем месте, тогда бы я герерил привязанный к партнеру шаблон, и заполнял его переменную $content например данными из email,template
Anton
Еще раз - контент конечно почти похожи, но все равно есть разные для партнеров
Anton
ну вобщем еще раз
Anton
я не ищу другого решения
Anton
я ищу как поменять что-то в FileViewFinder
Anton
в процессе выполнения скрипта
Anton
так как решение уже было принято большим консенсусом и сейчас уже 50% проекта переписывать никто не будет
Dmitry
ну так что мешает? твой код примерно такой будет
$emailContent = render('email');
$content = render('Partner1', $conten);
send($content);
Anton
потому что на страницах тогда вообще билебирда получится