TGViewer
Делаем продукт Делаем продукт @realbootstrapper · 127 subscribers
Post #78 540
Model Maker Yii2

Сегодня сделал утилиту для генерации моделей в Yii2.

Когда пишешь много нового кода, то требуется создавать много таблиц. У меня процесс такой что для таблицы я описываю сначала поля в формате команды SQL "create table", так как он и короткий и наглядный и является полной копией того что окажется в проде, что удобно, а потом я создаю модель и миграцию по этому набору полей.

Это просто большое количество рутинной и неприятной работы, которую хочется избежать. Все эти копирования полей, сопоставить названия, типы, выписать всё. Не хочу. Пусть одной кнопкой генерируется!

Для этого мне потребовалось написать утилиту, которая берёт SQL файл, извлекает из него всю полезную информацию и строит модель с миграцией. Это я и сделал.

Почему же не генерировать и то и другое и третье через нейросеть?

Нейросеть хоть и умная, но всё ещё является генератором текста, что не исключает ошибок и галлюцинаций. Придётся либо проверять за ней, что потратит моё время и нервы, либо довериться "на авось", что не потратит время но потратит ещё больше нервов.

Поэтому если можно написать код, который автоматически по правилам сгенерирует необходимый мне код, то я лучше сделаю это кодом. Результат будет детерминированный, то есть всегда один и тот же надёжный результат на одни и те же входящие данные.

Дополнительные плюшки

Так как цель в том, чтобы сделать утилиту подходящей для ежедневного использования, я добавил все удобства которые мне пришли в голову:
- автоматическое сканирование папки проекта на SQL файлы, чтобы не вбивать имя файла, а просто выбрать из списка "стрелочками"
- отображение имени модели
- поиск в списке по введённым символам
- индикатор статуса (файл модели отсутствует, совпадает с генерацией по SQL или требует обновления)
- автоматическая запись и модели и миграции в нужные папки (а не просто в текущую)

Опыт с Claude Code

На этот раз CC показал себя хорошо. Иногда всё же ошибался, но по итогу исправлял ошибки когда я ему на них указывал.

Приятным сюрпризом стало, что CC в последнем обновлении приобрёл привычку проверять за собой: не сломал ли он старое и решает ли его изменение кода на самом деле поставленную ему задачу.

Процесс кодирования стал быстрее а результат в разы лучше.

Итоги

Я доволен. Когда мне потребовалось автоматизировать рутину, с помощью Claude Code я справился очень быстро и моё усилие окупится стократно в дальнейшем.

Let's Build 👨‍💻
  • 👍 4
  • 👎 1
  • 💅 1
More from @realbootstrapper
  1. Sep 14, 2026Ускорение в 7 раз Реальная практическая задача. Проект с большим количеством файлов. Объём…
  2. Sep 13, 2026Часть 3. Решение Я несколько лет искал решение проблемы 9p, перепробовал все варианты, но…
  3. Sep 13, 2026Часть 2. Где подвох? Есть единственный, но всё же жирный минус: на стыке виртуальных машин…
  4. Sep 13, 2026WSL Drive Это мой новый проект. Пока он был в процессе разработки, я не анонсировал, чтобы…
  5. Sep 8, 20267 стадий развития проекта 1. Это тебе не нужно. 2. Ладно, это тебе нужно, но никому другом…
  6. Sep 2, 2026ccstatusline — отстой! После использования в течение нескольких дней начал замечать странн…
Threads Profile ViewerView any public Threads profile without an account.Open ThreadLook →Writing with AI? Make it sound human.Metric37 rewrites AI drafts so they read naturally. Free AI detector, 1,500 words free.Try Metric37 →