Size: a a a

2020 March 29

AM

Alexander Makarov in Yii Framework 3
Погодите мёржить. Я сначала посмотрю решение @xepozz...
источник

DS

Dmitriy S in Yii Framework 3
Alexander Makarov
Погодите мёржить. Я сначала посмотрю решение @xepozz...
А что там смотреть, форматтер вызывается в ActionCaller
источник

А

Алексей R in Yii Framework 3
Dmitriy S
А что там смотреть, форматтер вызывается в ActionCaller
зачем вообще нужен отдельный форматтер, если можно делать форматирование в стриме?
источник

NO

Nex Otaku in Yii Framework 3
Alexey Samoylov
И в конфиге к аппу цеплять
через апп это сделать невозможно. только глобально.
источник

DS

Dmitriy S in Yii Framework 3
Алексей R
зачем вообще нужен отдельный форматтер, если можно делать форматирование в стриме?
А заголовки ты тоже будешь в стриме задавать?
источник

AM

Alexander Makarov in Yii Framework 3
Алексей R
зачем вообще нужен отдельный форматтер, если можно делать форматирование в стриме?
JsonStream, XmlStream?
источник

А

Алексей R in Yii Framework 3
Dmitriy S
А заголовки ты тоже будешь в стриме задавать?
в мидлваре
источник

А

Алексей R in Yii Framework 3
Alexander Makarov
JsonStream, XmlStream?
не совсем
источник

А

Алексей R in Yii Framework 3
если мы одни и те же данные можем представить в разных форматах, то стрим для данных можно сделать один общий. Присобачить к нему конвертер можно многими способами (я бы сделал набор конвертеров со своими форматами, а нужный можно выбирать уже в мидлвари, которая имеет доступ и к реквесту, чтобы матчить заголовок запрашиваемых форматов и присутствующих конвертеров). Если надо универсальное решение, то это выглядит неплохо на мой взгляд :)
источник

А

Алексей R in Yii Framework 3
а вообще nyholm/psr7 мне не нравится и я  уже говорил, почему
источник

AM

Alexander Makarov in Yii Framework 3
источник

AM

Alexander Makarov in Yii Framework 3
Плюс что синтаксис в контроллере приятней, но есть два минуса.
источник

AM

Alexander Makarov in Yii Framework 3
В частности не ясно, как заголовки свои добавить.
источник

DS

Dmitriy S in Yii Framework 3
Алексей R
не совсем
Смотри, есть типовые задачи, которые должен решать форматтер.
1. В приложении три группы роутов. В каждой группе данные должны выводиться в своем формате.
2. Автоматическое форматирования контента по заголовку или параметру риквеста.
3. Работа с сырыми данными. Допустим ты хочешь все обернуть в следующий формат {"status": "success", "data" : {"name" : "Vasya"}}, при этом экшин контроллера у тебя возвращает массив ["name" => "Vasya"]. Обернуть нужно во всех роутах группы.
4. На группу выставлен один формат, допустим xml, один роут из группы нужно вывести в json
Если сможешь как минимум решить эти кейсы, то можно будет рассмотреть твой вариант.
А общие рассуждения пока не интересуют, сделаешь - покажешь.
источник

AM

Alexander Makarov in Yii Framework 3
Алексей R
если мы одни и те же данные можем представить в разных форматах, то стрим для данных можно сделать один общий. Присобачить к нему конвертер можно многими способами (я бы сделал набор конвертеров со своими форматами, а нужный можно выбирать уже в мидлвари, которая имеет доступ и к реквесту, чтобы матчить заголовок запрашиваемых форматов и присутствующих конвертеров). Если надо универсальное решение, то это выглядит неплохо на мой взгляд :)
new DataStream($data, $formatter)?
источник

AM

Alexander Makarov in Yii Framework 3
Пока предпочтительный вариант что у @yiiliveext в PR.
источник

А

Алексей R in Yii Framework 3
Alexander Makarov
new DataStream($data, $formatter)?
форматтер не в конструкторе, а в любое время после
источник

AM

Alexander Makarov in Yii Framework 3
Но что-то мне подсказывает, что @roxblnfk знает как улучшить.
источник

AM

Alexander Makarov in Yii Framework 3
Алексей R
форматтер не в конструкторе, а в любое время после
Это дефолтный.
источник

А

Алексей R in Yii Framework 3
я думаю сделаю альтернативный варинт, рассмотрим плюсы и минусы обоих
источник