Влад Солнцев @Quber
Тимлид
Information
- Rating
- Does not participate
- Location
- Москва, Москва и Московская обл., Россия
- Date of birth
- Registered
- Activity
Specialization
Backend Developer, Fullstack Developer
Lead
PHP
Golang
PostgreSQL
Git
SQL
OOP
Database
Docker
High-loaded systems
ходят легенды что изначально план был дать возможность людям дробить проекты на кернелы, потому была папка
app
иsrc
. В этом случае удобно было бы отдельные модули подключать в свои кернелы бандлами и т.д.Люди неправильно поняли и начали воспринимать бандлы как модули. и дробить проект именно таким образом. Причина для этого очень и очень проста — автоконфигурация. Вы создали папку
Entity
внутри бандла и доктрина автоматически подтянула оттуда сущности. Вы создали папкуResources
и… ну вы поняли идею.Жить без бандлов вообще можно было в целом с самого начала. Но ключевой момент распространенных заблуждений — автоконфигурация и неудобные конфиги.
С выходом symfony 3.3 по сути конфиги симфони стали куда более удобны для "безбандальной структуры". Но проблема того, что люди структурируют проект под автоконфигурацию, все еще никуда не делась.
что до мануалов — best practice симфони появился с выходом symfony 2.8 вроде, то есть люди уже успели набомбить проектов и привыкнуть. В этом бэст практис покрывался вопрос что нет смысла дробить на бандлы но опять же автоконфигурация а потому "если хотите бандл — не делите ничего а юзайте AppBundle".
Вообще удивительно что в вашем примере вы не сами вызываете
setId
. Ну и в целом фикстуры отстой, фабрики фикстур рулят.Теперь все боты пытаются отправить данные по этому адресу. После формы /form, пишем ява скрипт в 2 строчки, который подменяет в атрибуте action значение на настоящее . Получается страница загружается и одновременно меняется action. Бот не может работать с js в данном случае, следовательно у него другие данные. На деле же у обычного пользователя конечно должен быть включён JS в настройках браузера (что лично для меня не критично). Зато у пользователя нету капчи, а боты не спамят. Возможно у этого метода есть другие минусы, но я их пока не выявил. Использую уже 3 года, ни один спам не прошёл. Ни разу за это время не встречал такого решения с капчей, вот решил поделиться своими знаниями…