Автоматическая настройка для вольт-двигателя Phalcon?

В документации Phalcon упоминается, как автоматически скрыться с помощью фильтра. |e или через autoescape-mode {% autoescape true %}, Но у Twig автоэкранирование включено по умолчанию и позволяет передавать его в качестве опции объекту Twig Environment. Таким образом, в Twig вы можете глобально управлять автоэкранированием для вашего приложения.

Предоставляет ли Phalcon такую ​​же возможность? Я действительно не мог найти этот ответ в Google, и мои знания C отсутствуют.

1

Решение

Да, это может быть проблемой, потому что AFAIK в Реализация Вольта Экранирование предназначено для работы с блоками или выражениями, поэтому может быть сложно определить, что вам следует делать.

ИМХО, проще всего добиться этого, настроив компилятор на экранирование выражения только в том случае, если значение исходит из внешнего источника, такого как переменная или возвращаемый метод. Итак … ответ в основном нет, Вольт не может этого сделать. Но на самом деле это было бы отличным NRF в рамки.


РЕДАКТИРОВАТЬ

Подумав немного больше о проблеме, я понял, что я делаю нечто подобное в своем приложении. Обмен данными в операциях CRUD — это в основном цикл между «формами», контроллерами и персистентностью, и помимо всех помощников, предоставляемых Phalcon (от ORM до абстракций форм), нам необходимо применять некоторые соглашения для автоматизации еще большей части наших операций CRUD, которые в основном являются То же самое большую часть времени.

Таким образом, у меня есть два компонента, которые помогают мне при извлечении данных модели из форм, и еще один, который помогает с данными модели из моей базы данных. В обоих этих компонентах преобразования значений, фильтры и проверки вызываются автоматически при каждой операции.

Я говорю это, потому что фильтр по умолчанию для строк является escape-строкой. Я имею в виду, что у вас могут быть лучшие результаты, если вы беспокоитесь о санации данных при любом вводе данных в ваши контроллеры (т. Е. Из форм или базы данных). В качестве бонуса вы получаете более согласованные и строго типизированные значения в ваших моделях, что значительно упрощает реализацию бизнес-логики.

0

Другие решения

Других решений пока нет …

По вопросам рекламы [email protected]