【问题标题】:Ruby/Rails - Remove ActiveAdmin from my applicationRuby/Rails - 从我的应用程序中删除 ActiveAdmin
【发布时间】:2011-10-17 19:59:19
【问题描述】:

我在我的应用程序中使用 Active Admin 管理框架玩得很开心。 http://activeadmin.info/

当我安装它时,我跑了

rails g active_admin:install
rake db:migrate
rails g active_admin:resource product

它在我的应用程序中生成了大量迁移和代码。

我的问题是,如果我想返回并取出 active_admin 放入我的应用程序的所有内容,我该怎么做?

是否有一个“rails active_admin:uninstall”命令可以删除所有内容,还是我必须手动创建迁移以删除所有表并搜索我的代码以查看它添加了什么?

【问题讨论】:

  • 你使用版本控制吗?

标签: ruby-on-rails ruby-on-rails-3 rubygems activeadmin


【解决方案1】:

如果您运行以下代码,它应该会破坏活动管理员:

rails destroy active_admin:install
rails destroy active_admin:resource product

【讨论】:

  • 看起来你甚至不需要第二行。
  • 另外,请注意,如果您在添加 ActiveAdmin 时设置了 AdminUser 模型,这将破坏它以及您添加到其中的任何方法。
  • 请注意一些垃圾代码将留在“routes.rb”和“schema.rb”中。搜索“admin”并注释掉不必要的代码,否则以后可能会出错。
  • 我需要回滚迁移吗
  • 同时从您的 gem 文件中删除 gem 'activeadmin' 否则它会在您下次捆绑时再次安装 = ]
【解决方案2】:

在终端中运行

rails destroy active_admin:install

从您的 gemfile 中删除 gem 'activeadmin'

从js和css文件夹中删除资产文件(如果有的话)

删除 Routes.rb 中的任何这些行

  devise_for :admin_users, ActiveAdmin::Devise.config
  ActiveAdmin.routes(self)
  ActiveAdmin.routes(self)

然后创建一个新的迁移:

  drop_table :active_admin_comments

您可能还需要:

  drop_table :admin_notes

或通过在您的 db/migrate 文件夹中找到相关文件 MoveAdminNotesToCommentsCreateAdminNotes 来回滚迁移

rake db:migrate:down VERSION=the_version_number
rake db:migrate:down VERSION=the_version_number

【讨论】:

  • 新的 drop 迁移比回滚迁移要干净得多,但是感谢您提出这个好的答案,一切都在这里 ;)
  • 为了大家方便,我做了:rails generate migration drop_active_admin_comments 修改迁移是这样的: `` bundle exec rake db:migrate `` 表和索引都不见了;)
  • 好的,我只是不知道如何格式化带有代码的评论......所以我终于被拒绝重新编辑我以前的评论的权利:/
  • 哦,一旦 rails destroy active_admin:install 完成,不要忘记删除 Gemfile 中的 gem 'active_admin' 条目;)
  • 是的。谢谢我现在已经做到了。有用。销毁active_admin并重新安装最新版本。 Rails 和 Windows 7 不太喜欢彼此:D
【解决方案3】:

您还需要在运行后删除资产文件夹中所有活动的管理相关 js 和 css 文件 rails destroy active_admin:install

【讨论】:

    猜你喜欢
    • 2014-01-07
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2011-09-09
    • 1970-01-01
    • 2012-11-15
    相关资源
    最近更新 更多