Warning: file_get_contents(/data/phpspider/zhask/data//catemap/1/vue.js/6.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Ruby on rails 如何在Rails外部使用ActiveRecord?_Ruby On Rails_Ruby_Ruby On Rails 4_Activerecord_Rails Postgresql - Fatal编程技术网

Ruby on rails 如何在Rails外部使用ActiveRecord?

Ruby on rails 如何在Rails外部使用ActiveRecord?,ruby-on-rails,ruby,ruby-on-rails-4,activerecord,rails-postgresql,Ruby On Rails,Ruby,Ruby On Rails 4,Activerecord,Rails Postgresql,我正在构建一个基于六边形架构的Rails应用程序 我的适配器之一是存储适配器(作为gem维护),它管理对数据库的访问,并为rails应用程序提供简单的接口来存储和查询数据库中的数据 我想在这个gem中使用ActiveRecord和所有rake任务(创建、迁移、删除、回滚)来管理数据库 我如何在rails之外使用AR,但与所有rake任务一起使用?像其他gem一样安装它 gem install activerecord 然后您可以在这样的地方配置它 ActiveRecord::Base.esta

我正在构建一个基于六边形架构的Rails应用程序

我的适配器之一是存储适配器(作为gem维护),它管理对数据库的访问,并为rails应用程序提供简单的接口来存储和查询数据库中的数据

我想在这个gem中使用
ActiveRecord
和所有
rake
任务(创建、迁移、删除、回滚)来管理数据库


我如何在rails之外使用AR,但与所有rake任务一起使用?

像其他gem一样安装它

gem install activerecord
然后您可以在这样的地方配置它

ActiveRecord::Base.establish_connection(
  :adapter  => 'mysql',
  :database => 'database',
  :username => 'user',
  :password => 'password',
  :host     => 'localhost')
然后,模型可以像普通一样从ActiveRecord::Base继承

您可以获得所有的rake任务,但是您必须进行一些额外的配置,因为您将没有rail。下面是activerecord内部的链接,介绍如何配置这些内容


更新的解决方案是。基本上,在对gem进行配置并创建配置之后,您就可以访问所有ActiveRecord细节了。包括Rake任务


此外,我还制作了一个小型生成器,用于构建能够访问ActiveRecord开箱即用的简单脚本:。

谢谢!这就是我目前所知道的。我的问题是在我的gem中也有所有管理数据库的
rake
任务。如果你想要一些有效的东西,可能会重复。这里有一个例子。运行bundle安装并迁移数据库。你的任务完成了。更多信息请参见自述。相关的: