Symfony команда была занята инициативой Symfony UX. Но недавно выпустили обновление.
Мечтатель, путешественник, программист 👨💻 🌏 ✈️ 📷
Symfony команда была занята инициативой Symfony UX. Но недавно выпустили обновление.
За последние недели опубликовали десятки статей о наиболее заметных новых функциях Symfony 5.1, которые будут выпущены через несколько дней. В этих заключительных статьях серии мы продемонстрируем некоторые второстепенные, но полезные новые функции, которые упростят вашу работу по разработке.
Symfony 5.1 будет включать новую систему безопасности как одну из самых больших новых функций. После нескольких месяцев планирования, обсуждений и тяжелой работы смогли вовремя завершить работу над Symfony 5.1 в качестве экспериментальной функции.
Некоторые компоненты Symfony (например, Cache, Lock, Messenger и т. д.) Могут хранить свое содержимое в базах данных с помощью Doctrine ORM. Для работы требуется некоторая ручная настройка. Например, чтобы хранить сеансы в базе данных, вы должны создать таблицу, в которой хранится информация.
Класс ParameterBag
, определенный Symfony, похож на объектно-ориентированный массив, который хранит связанные значения и предоставляет такие методы, как get()
, set()
, has()
и т. д. Symfony определяет специализированные классы ParameterBag
для некоторых целей (например, FileBag
для загруженных файлов. , ServerBag
для заголовков HTTP и т. д.)
Добавили новую опцию html5 в поле формы ColorType
. Если для этого параметра установлено значение true
, тип формы проверяет, соответствует ли его значение цветовому формату HTML5, то есть /^#[0-9a-f]{6}$/i
.
В дополнение к новым валидаторам AtLeastOneOf, ExpressionLanguageSyntax и Hostname, Symfony 5.1 представил другие улучшения валидатора.
Компонент OptionsResolver помогает настраивать объекты с массивами параметров. В Symfony 5.1 улучшили его с помощью следующих функций.
В приложениях Symfony Voters безопасности централизуют логику авторизации, которая решает, может ли данный пользователь получить доступ к запрошенному ресурсу. Это обычные службы Symfony, помеченные тегом security.voter
, поэтому они могут определять свои приоритеты с помощью атрибута priority
тега.
В дополнение к валидатору Hostname и валидатору ExpressionLanguage, в Symfony 5.1 добавили еще один валидатор с именем AtLeastOneOf
. Вы можете применить его к методам и свойствам, чтобы гарантировать, что их значения удовлетворяют хотя бы одному из заданных ограничений (которое может быть любым из встроенных ограничений Symfony и/или ваших собственных пользовательских ограничений):