Во многих фреймворках создание нового ресурса - это одна команда.
А вот удаление - ручной, многосоставный, рутинный ад. Вы создаёте файлы: модель, миграцию, контроллер, тесты. Потом передумываете, а файлы уже лежат в git. Что дальше? Если повезет через `git clean`, но обычно руками: * удалить файлы модели, миграции, контроллера, вьюх, * откатить миграцию, * удалить строчки в routes, * проверить, ничего ли не осталось. И без команды удаления это прямо задалбывает. Так например происходит в Laravel, особенно если косякнул с именем чего-нибудь. Потом сидишь и ручками трешь. Для всего этого добра можно было бы придумать обратную команду, которая чистит любой сгенерированный ресурс с его связями, но почему-то так получилось, что это есть в небольшом количестве фреймворков. В первую очередь я говорю про Rails, который это в принципе популяризировал. В Rails есть команда, которая удаляет всё одним движением. То есть на каждый генератор, есть “удалятел”, который подчищает все то, что было добавлено генератором. Генерация ```bash bin/rails generate model User name:string invoke active_record create db/migrate/ 20250424120000_create_users.rb create app/models/ user.rb invoke test_unit create test/models/ user_test.rb create test/fixtures/users.yml ``` Удаление ```bash bin/rails destroy model User remove db/migrate/ 20250424120000_create_users.rb remove app/models/ user.rb remove test/models/ user_test.rb remove test/fixtures/users.yml ``` Крутяк да? А как вы удаляете то, что вам нагенерилось?
Организованное программирование
Во многих фреймворках создание нового ресурса - это одна команда.
А вот удаление - ручной, многосоставный, рутинный ад. Вы создаёте файлы: модель, миграцию, контроллер, тесты. Потом передумываете, а файлы уже лежат в git. Что дальше?
Если повезет через `git clean`, но обычно руками:
* удалить файлы модели, миграции, контроллера, вьюх,
* откатить миграцию,
* удалить строчки в routes,
* проверить, ничего ли не осталось.
И без команды удаления это прямо задалбывает. Так например происходит в Laravel, особенно если косякнул с именем чего-нибудь. Потом сидишь и ручками трешь.
Для всего этого добра можно было бы придумать обратную команду, которая чистит любой сгенерированный ресурс с его связями, но почему-то так получилось, что это есть в небольшом количестве фреймворков. В первую очередь я говорю про Rails, который это в принципе популяризировал.
В Rails есть команда, которая удаляет всё одним движением. То есть на каждый генератор, есть “удалятел”, который подчищает все то, что было добавлено генератором.
Генерация
```bash
bin/rails generate model User name:string
invoke active_record
create db/migrate/ 20250424120000_create_users.rb create app/models/ user.rb invoke test_unit
create test/models/ user_test.rb create test/fixtures/users.yml
```
Удаление
```bash
bin/rails destroy model User
remove db/migrate/ 20250424120000_create_users.rb remove app/models/ user.rb remove test/models/ user_test.rb remove test/fixtures/users.yml
```
Крутяк да? А как вы удаляете то, что вам нагенерилось?