Size: a a a

2020 August 19

AM

Alexander Makarov in Yii Framework 3
Сергей Предводителев
Про csrf - можно конечно в ViewRenderer сделать "withCsrf", но тогда потянутся зависимости, которые не нужны бы по идее там.
Мне не очень что для включения CSRF нужно сильно больше телодвижений...
источник

DS

Dmitriy S in Yii Framework 3
Alexander Makarov
Ну получается много способов сделать одно и то же. Слишком много:

1. HTML
2. Передать параметр, сунуть в HTML
3. Задать default в View
4. Через твои интерфейсы
5. Вставить мета через событие BeforeRender
источник

СП

Сергей Предводителев... in Yii Framework 3
4 или 5 - не велика разница))))
источник

СП

Сергей Предводителев... in Yii Framework 3
Alexander Makarov
Мне не очень что для включения CSRF нужно сильно больше телодвижений...
Да, но я так и не придумал как лучше сделать(
Только вставить метод прямо во ViewRenderer, но это потянет зависимость от роутера, но это ни к чему в yiisoft/view
источник

СП

Сергей Предводителев... in Yii Framework 3
Можно в пакете yii-web сделать ещё один ViewRenderer, который отнаследуется от ViewRenderer из yiisoft/view. Но это тоже так себе
источник

СП

Сергей Предводителев... in Yii Framework 3
Ещё путь - сделать Csrf-инъекцию ещё в конфиге, но тогда CSRF будет на всех страницах.
источник

DS

Dmitriy S in Yii Framework 3
Сергей Предводителев
Да, но я так и не придумал как лучше сделать(
Только вставить метод прямо во ViewRenderer, но это потянет зависимость от роутера, но это ни к чему в yiisoft/view
А что там от роутера тянет?
источник

СП

Сергей Предводителев... in Yii Framework 3
токен
$this->csrfToken = $this->urlMatcher->getLastMatchedRequest()->getAttribute($this->requestAttribute);
источник

DS

Dmitriy S in Yii Framework 3
Сергей Предводителев
токен
$this->csrfToken = $this->urlMatcher->getLastMatchedRequest()->getAttribute($this->requestAttribute);
Так у тебя и так оно сейчас там, или ты CsrfViewInjection хочешь вынести в yii-web?
источник

СП

Сергей Предводителев... in Yii Framework 3
Dmitriy S
Так у тебя и так оно сейчас там, или ты CsrfViewInjection хочешь вынести в yii-web?
Сейчас это вообще всё в yii-demo.
Но да, я думал в view будет только сам ViewRenderer и интерфейсы.
источник

DS

Dmitriy S in Yii Framework 3
Сергей Предводителев
Сейчас это вообще всё в yii-demo.
Но да, я думал в view будет только сам ViewRenderer и интерфейсы.
CsrfViewInjectionInterface можно добавить и в конструктор ViewRender и добавить метод withCsrf() как сейчас.
источник

СП

Сергей Предводителев... in Yii Framework 3
Dmitriy S
CsrfViewInjectionInterface можно добавить и в конструктор ViewRender и добавить метод withCsrf() как сейчас.
на первый взгляд хорошее решение.
А саму инъекцию засунуть в yii-web
источник

СП

Сергей Предводителев... in Yii Framework 3
Запилю
источник

DS

Dmitriy S in Yii Framework 3
Сергей Предводителев
на первый взгляд хорошее решение.
А саму инъекцию засунуть в yii-web
да, хотя так себе наслоение)
источник

СП

Сергей Предводителев... in Yii Framework 3
Dmitriy S
да, хотя так себе наслоение)
зато yiisoft/view можно будет пользовать отдельно от yii.
источник

DS

Dmitriy S in Yii Framework 3
Сергей Предводителев
зато yiisoft/view можно будет пользовать отдельно от yii.
Не, теоретически все верно, просто в приложении лишний интерфейс биндить. Хотя не, можно прям в конфиге yii-web забиндить, тогда все норм
источник

СП

Сергей Предводителев... in Yii Framework 3
Dmitriy S
Не, теоретически все верно, просто в приложении лишний интерфейс биндить. Хотя не, можно прям в конфиге yii-web забиндить, тогда все норм
Ага
источник

А

Алексей R in Yii Framework 3
@romkatsu https://github.com/yiisoft/data/issues/43 в тот раз ставили этот вопрос на паузу. Пришло время снимать )
источник

AP

Arman Poghosyan in Yii Framework 3
yiisoft/yii-web имеет зависимость от yiisoft/view?
источник

RT

Roman Tsurkanu in Yii Framework 3
Алексей R
@romkatsu https://github.com/yiisoft/data/issues/43 в тот раз ставили этот вопрос на паузу. Пришло время снимать )
что то я не помню такого
источник