leni_m, Как правило перезагрузка страницы помогает, так как модуль дебаг говорит о том что не может найти данные с тегом "5c98dbe029b5b", если нет, то почистите папку debug в runtime
Andrej Sharapov, Называете допустим поле email посредством css скрываете его, боты с css не дружат, далее на сервере, проверяете если это поле не пустое, то это бот, так как реальный человек в реальном браузере его видеть не будет, а боты они как правило тупые, видя поле, заполняют его, а если это поле email или phone то тем более
sibir007, Вам более понятно будет если изучите внутренний класс PHP, такой как ArrayAccess.
Так как Illuminate\Container\Container implements ArrayAccess, ContainerContract.
Данный интерфейс обеспечивает доступ к объектам в виде массивов.
Тут действия должны быть 100% разные. Основная нагрузка ляжет на правила Урл менеджера. Его задача будет распарсить урл, и проверить по slug к какому действию, контроллеру, модулю относится роут, и направить приложение на него.
['/test/'.$this->id]
Так писать нельзя, таким образом вы минуете правила УрлМенеджера.
Насчет получения идентификатора, тут скорее надо сообщение реализовывать другим способом, так как $this->id будет пустым при инициализации и валидации новой модели.
Здесь корректней создать отдельную функцию для валидации, и там реализовать получение идентификатора
Максим Ворожцов, Дело в том что это совершенно нормально, и команда фреймворка тут не причем. Иногда полезно получать plain запрос из ActiveQuery и выполнять его в каком либо клиенте, так на лицо будет видно результаты запроса, и там же сразу можно попробовать решить возникающие проблемы.
Получить plain запрос можно так: $query->createCommand()->rawSql
Если при реализации функционала вам приходится часто копировать код, перенося из одного контроллера в другой, или их одной вьюшки в другую, то наверняка возникнет чувство что можно всё реализовать в одном, тогда надо делать в одном, если каждая страница с фильтром выглядит иначе, имеет разную верстку, разные наборы фильтров и прочее, то тогда логичнее разносить всё по разным контроллерам. По исходной информации мало что можно сказать, так как нет деталей
Получаемый урл должен иметь вид:
tiger.lc/ru/auth/for-specialists/wXPV...
а у вас
tiger.lc/ru/auth/for-specialists/index/?token=wXPV...
Один из вариантов, это то что урл менеджер не доходит до вашего правила а отрабатывает раньше, надо смотреть список правил, возможно выше есть какое либо общее правило вида //
Также какие настройки указаны в урл менеджере для $enablePrettyUrl и $enablePrettyUrl ?
Как и в memcached, всё находится в памяти. Redis сохраняется на диск, но он не сохраняет данные синхронно с тем как вы записываете их. Есть две причины из-за которых Redis в качестве главного хранилища — отстой:
— Вы вынуждены умещать все свои данные в памяти, и…
— Если сервер откажет между двумя синхронизациями с диском — вы потеряете всё что сидело в памяти.
Crash, Данные хранятся в памяти, это быстро но не надежно, его как правило используют при кешировании, так как там при потере данных ничего не произойдет, приложение как работало так и будет работать
Максим Ворожцов, В виджете хлебных крошек реализовать метод getPrevUrl, в нем палить текущий урл, и если он найден в самих хлебных крошках, то возвращать путь его родителя