Есть ли способ "отменить" действие команды scaffold в Rails?
Отменить леса в Rails
Ответ 1
Сначала, если вы уже выполнили миграцию, сгенерированную командой scaffold
, сначала необходимо выполнить откат.
rake db:rollback
Вы можете создавать строительные леса, используя:
rails generate scaffold MyFoo
(или аналогичный) и вы можете уничтожить/отменить, используя
rails destroy scaffold MyFoo
Это приведет к удалению всех файлов, созданных с помощью generate
, но никаких дополнительных изменений, которые вы, возможно, сделали вручную.
Ответ 2
Ришав Растоги прав, а с рельсами 3.0 или выше его:
rails generate scaffold ...
rails destroy scaffold ...
Ответ 3
Вы можете отменить все, что вы сделали с помощью
rails generate xxx
По
rails destroy xxx
Например, это относится к генераторам для миграции, эшафота, модели... и т.д.
Ответ 4
Если вы просто хотите увидеть файлы, которые создаст генератор, вы можете передать генератор --pretend или -p.
Ответ 5
Лучший способ:
destroy rake db: rake db:rollback
Для леса:
rails destroy scaffold Name_of_script
Ответ 6
rails d scaffold <scaffoldname>
Кроме того, убедитесь, что вы отменили перенос, сделанный либо откатом, либо определенной версией.
Ответ 7
в первый раз, вы можете проверить миграцию базы данных, если вы создали эшафот. вы должны уничтожить их, чтобы очистить свою базу данных
rake db:rollback
затем
rails d scaffold
Ответ 8
Чтобы создать строительные леса:
rails generate scaffold xyz
Чтобы вернуть леса:
rails destroy scaffold xyz
Ответ 9
Rails destroy name
rake db:rollback
Ответ 10
вам нужно также отменить миграцию после разрушения эшафота.
rails destroy scaffold 'scaffoldname'
rake db:rollback
Ответ 11
Для создания леса в рельсах -
rails generate scaffold MODEL_GOES_HERE
Для отмены эшафота в рельсах -
rails destroy scaffold MODEL_GOES_HERE
Ответ 12
Итак, процесс, который вы должны выполнить, чтобы отменить строительные леса в рельсах 4. Выполнить команду, как показано ниже:
-
rails d scaffold FooBar
-
rake db:rollback
если you_had_run_rake db:migrate
после создания над эшафотом?
Что это!
Ура!
Ответ 13
вам нужно сначала отменить миграцию, выполнив рейк-дб: откат, если он И затем уничтожить эшафот
rails d scaffold foo
Ответ 14
используйте этот
rails d scaffold MODEL_NAME
rake db:rollback
Ответ 15
Сначала вам нужно выполнить rake db: rollback для уничтожения таблицы
если вы уже запустили rake db: migrate, а затем вы можете запустить
рельсы d эшафот Модель
Ответ 16
Рекомендовать откат Сначала введите свой терминал.
rake db:rollback
Добавить разрушающий эшафот ( "d" означает "уничтожить" )
rails d scaffold name_of_scaffold
Наслаждайтесь своим кодом.
Ответ 17
Когда мы создаем строительные леса, будут созданы следующие файлы:
Команда: rails generate scaffold Game
Созданные файлы:
> invoke active_record
> create db/migrate/20160905064128_create_games.rb
> create app/models/game.rb
> invoke test_unit
> create test/models/game_test.rb
> create test/fixtures/games.yml
> invoke resource_route
> route resources :games
> invoke inherited_resources_controller
> create app/controllers/games_controller.rb
> invoke erb
> create app/views/games
> create app/views/games/index.html.erb
> create app/views/games/edit.html.erb
> create app/views/games/show.html.erb
> create app/views/games/new.html.erb
> create app/views/games/_form.html.erb
> invoke test_unit
> create test/controllers/games_controller_test.rb
> invoke helper
> create app/helpers/games_helper.rb
> invoke test_unit
> create test/helpers/games_helper_test.rb
> invoke jbuilder
> create app/views/games/index.json.jbuilder
> create app/views/games/show.json.jbuilder
> invoke assets
> invoke coffee
> create app/assets/javascripts/games.js.coffee
> invoke scss
> create app/assets/stylesheets/games.css.scss
> invoke scss
> create app/assets/stylesheets/scaffolds.css.scss
Если мы выполнили миграцию после этого, нам нужно сначала отменить миграцию, так как удаление леса также удалит файл миграции, и мы не сможем вернуть эту миграцию.
Если мы выполнили миграцию:
rake db:rollback
и после этого мы можем безопасно удалить эшафот с помощью этого комбата.
rails d scaffold Game
Эта команда удалит все файлы, созданные эшафотом в вашем проекте.
Ответ 18
При запуске rails g
вы можете отменить его, выполнив rails d
(destroy), чтобы удалить то, что вы создали. Если вы уже запустили rake db:migrate
, вам нужно запустить rake db:rollback
до уничтожения:)
Ответ 19
Да, сам scaffold
и все, что объединяет его.
Команда destroy
противоположна generate
и отменит ее. Просто передайте ему имя так же, как с generate
, и оно будет очищено от вашего проекта:
rails generate scaffold posts title:string content:text
rails destroy scaffold posts title:string content:text
Ответ 20
Случай 1: Если вы запускаете только эту команду для создания эшафота -
rails generate scaffold MODEL_NAME FIELD_NAME:DATATYPE
Ex - rails generate scaffold User name:string address:text
но до сих пор вы не запускали какую-либо команду для миграции, например
rake db:migrate
тогда вам нужно будет запускать только эту команду, например -
rails destroy scaffold User name:string address:text
Случай 2: Если вы уже запускали ( "Леса и миграция" ) под следующими командами типа -
rails generate scaffold User name:string address:text
rake db:migrate
Затем вам нужно будет запустить первую команду миграции откат, а затем уничтожить эшафот, как показано ниже -
rake db:rollback
rails destroy scaffold User name:string address:text
Таким образом, мы можем отменить строительные леса. Кроме того, мы можем использовать d для destroy и g для сгенерировать как ярлык.
Ответ 21
Чтобы создать эшафот:
rails generate scaffold abc
Чтобы вернуть этот эшафот:
rails destroy scaffold abc
Если вы выполнили миграцию, просто откат
rake db:rollback STEP=1
Ответ 22
rails g scaffold MyFoo
для генерации и
rails d scaffold MyFoo
для удаления
Ответ 23
другое решение на основе git
запустите новый проект
rails new project_name
cd project_name
инициализировать git
git init
git commit -m "initial commit"
создать эшафот
rails g scaffold MyScaffold
rake db:migrate
откат леса
rake db:rollback
git reset --hard
git clean -f -d
Ответ 24
rails [option] scaffold scaffold_name
Вариант
g generate
d destroy
Если вы делаете
rails g scaffold myFoo
Затем верните его назад, используя
rails d scaffold MyFoo