【问题标题】:How do I remove ActiveRecord from an existing Rails 4 Application?如何从现有的 Rails 4 应用程序中删除 ActiveRecord?
【发布时间】:2015-04-03 20:01:58
【问题描述】:

我开始了一个 Ruby on Rails 项目,其中包括一个带有 ActiveRecord 和 Neography 的简单推荐系统。现在我发现了neo4j.rb,它将大大简化我的生活。 :-)

我现在了解到,我可以在没有 ActiveRecord 的情况下创建一个新的应用程序,如下所示:

rails new xyz -O

我可以这样做并将我的大部分文件/代码复制粘贴到那个新项目中。还是有更简单的方法?

我仍在考虑这一步是否必要。是否可以同时使用 neo4j.rb 和 ActiveRecord?我正在考虑使用 ActiveRecord 和我的推荐系统在 neo4j 中运行身份验证系统(例如设计)。有没有人有这种方法的经验?

【问题讨论】:

标签: ruby-on-rails activerecord neo4j neo4j.rb


【解决方案1】:

按照这些步骤进行

  1. 从您的 Gemfile 中删除数据库适配器 gem,例如 mysql2、sqlite3 等

  2. application.rb 中删除require 'rails/all' 并需要您想要使用的框架(在您的rails 版本中的available 中,列表各不相同,不要只是复制),例如:

    require "action_controller/railtie"
    require "action_mailer/railtie"
    require "sprockets/railtie"
    require "rails/test_unit/railtie"
    
  3. 删除database.ymlschema.rb和所有迁移

  4. test/test_helper.rb 中删除迁移检查
  5. config/environments中删除所有与活动记录相关的配置

希望这会有所帮助!

来源 - Disable ActiveRecord for Rails 4

【讨论】:

  • 是的,谢谢。您对我的问题的第二部分也有意见吗? “我仍在考虑是否需要这一步。是否可以同时使用 neo4j.rb 和 ActiveRecord?我正在考虑在 Neo4j 中使用 ActiveRecord 和我的推荐系统运行身份验证系统(例如设计)。有人有这种方法的经验吗?”
  • 这是一个很好的答案。另请注意,gem 的 wiki 有一个命令,您可以使用该命令在没有 ActiveRecord 的情况下使用 neo4j 设置新的 rails 应用程序:github.com/neo4jrb/neo4j/wiki/Neo4j-v3-Setup#usage-from-rails
【解决方案2】:

对于那些使用 rails-api gem 的人,在执行 rails-api new my_api 时使用 --skip-active-record 标志可能会遇到类似的错误。当前的修复(直到发布新的更正版 gem)是编辑您的 rails-api gem 以进行此提交。使用 bundle open 并用新的更正的 Gemfile 替换旧的 Gemfile。重新运行,您应该一切就绪。

【讨论】:

  • 哪个类似的错误和哪个提交?可以提供链接吗?
  • 如果您复制粘贴答案,您应该 1. 正确操作(包括链接) 2. 链接到原始答案。
  • 如果你不知道 gem 或 api 的概念,那么没有人可以帮助你。
  • 那你为什么又问类似的问题?
  • 我没有看到其他问题。对此感到抱歉。否则我只会问我问题的第二部分。
猜你喜欢
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 2014-01-07
  • 2019-03-25
相关资源
最近更新 更多