Size: a a a

2020 July 29

СП

Сергей Предводителев... in Yii Framework 3
Сначала разберусь как работать без миграций. Итак много информации сразу :)
источник

А

Алексей R in Yii Framework 3
просто применение миграции сбрасывает схему из кеша )
источник

СП

Сергей Предводителев... in Yii Framework 3
Алексей R
просто применение миграции сбрасывает схему из кеша )
В описанной мной схеме кэш вообще не нужен)
источник

А

Алексей R in Yii Framework 3
в описанной схеме много ручного труда
источник

СП

Сергей Предводителев... in Yii Framework 3
Алексей R
в описанной схеме много ручного труда
Лишнее - только запустить команду для генерации схемы
источник

СП

Сергей Предводителев... in Yii Framework 3
Остальное всё равно делать - аннотации писать, миграции писать и на сервере их запускать
источник

А

Алексей R in Yii Framework 3
а можно было бы просто аннотации писать )
источник

А

Алексей R in Yii Framework 3
всё остальное - само
источник

А

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

СП

Сергей Предводителев... in Yii Framework 3
м... ну да, идеальный вариант конечно. Но пока не буду доверятся автоматике по генерации миграций)
источник

А

Алексей R in Yii Framework 3
генерируй и проверяй. Делов то )
источник

СП

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

СП

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

А

Алексей R in Yii Framework 3
ну ок. После применения миграции yii2 запускай автогенерацию миграций cycle. Если будут пустые, то всё ок
источник

СП

Сергей Предводителев... in Yii Framework 3
Спасибо! Пойду разбираться с аннотациями.
Это надо будет ещё либу сделать для yii2 наподобие yii-cycle
источник

А

Алексей R in Yii Framework 3
ну т.е. не всё ок, а только тот факт, что всё описанное аннотациями покрыто структурой БД
источник

А

Алексей R in Yii Framework 3
а ещё может помочь внедрение своих DataReader'ов
источник

А

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

СП

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

А

Алексей R in Yii Framework 3
да. Ты в своём приложении создаёшь интерфейс. У меня такой получился
use Yiisoft\Data\Reader\CountableDataInterface;
use Yiisoft\Data\Reader\DataReaderInterface as YiiDataReaderInterface;
use Yiisoft\Data\Reader\OffsetableDataInterface;
use Yiisoft\Data\Reader\SortableDataInterface;
interface DataReaderInterface extends
   YiiDataReaderInterface,
   OffsetableDataInterface,
   CountableDataInterface,
   SortableDataInterface,
   IteratorAggregate

и делаешь реализации: на yii2 AR, на cycle (наследуешься от того, что по ссылке, прибавляя этот интерфейс), подтягиваешь сюда же IterableDataReader шы yiisoft/data
И вот у тебя набор коллекций под одним интерфейсом но с разной логикой: первая берёт данные через AR, вторая через cycle, третья для готовых наборов данных.
И в коде везде пользуешься только интерфесом. Т.о. ARDataReader со временем будет вымещен двумя другими и всё, AR можно удалять
источник