0

我正在尝试创建一个 ruby​​ 脚本,该脚本使用我已经设置的 activerecord 模型将数据写入我的数据库。在我的 app/models 目录中,我有一个如下所示的模型:

class Financials < ActiveRecord::Base
  attr_accessible :symbol, :cur_price

end

在我的 ruby​​ 脚本中,我尝试连接到数据库。

require 'active_record'
 require 'mysql2'



 ActiveRecord::Base.Financials(
      adapter:  'mysql2',
      host:     'localhost',
      database: 'financials',
      username: 'dbuser',
 )

当我运行脚本时,我收到以下错误:

.rvm/gems/ruby-2.0.0-p0/gems/activerecord-3.2.13/lib/active_record/dynamic_matchers.rb:55:in `method_missing': undefined method `Financials' for ActiveRecord::Base:Class (NoMethodError)

不太确定我在这里做错了什么。

在此先感谢您的帮助

4

2 回答 2

3

你试过使用establish_connection吗?

require 'active_record'
require 'mysql2'

ActiveRecord::Base.establish_connection(
     adapter:  'mysql2',
     host:     'localhost',
     database: 'financials',
     username: 'dbuser',
 )

# Do your work
class Financials < ActiveRecord::Base
    attr_accessible :symbol, :cur_price    
end

# (...)
于 2013-07-05T23:14:03.400 回答
1

看看这个位于 rails 活动记录示例下的脚本。在这个脚本的开始是做插入。 https://github.com/rails/rails/blob/master/activerecord/examples/performance.rb

从线10 to 91是你可以做的事情。

于 2013-07-05T23:29:57.117 回答