我正在开发一个Rails网站,该网站介绍股票共同基金和ETF。我已经有了一个单独的Ruby脚本,每晚运行一次,并在Postgres数据库中填充这些共同基金和ETF的数据。
Rails第6章教程并不是我想要的。我正在尝试做的和Rails教程的第6章之间的区别是: 1.在我的Rails站点中,不需要创建数据库,因为它已经填充了。所以我认为我不需要使用“rails generate”或“rake db:migrate”。 (或者我错了吗?) 2.我的Rails站点只读取数据,不添加,删除或编辑数据。
答案 0 :(得分:1)
您不必创建迁移。只需创建您的模型。如果数据库表与模型名称不匹配,则可以对旧版本的Rails使用set_table_name
,对于较新版本使用self.table_name = 'table_name'
。如果不对外键和主键使用Rails标准,则还必须指定它们。
例如:
# Assuming newer versions of Rails (3.2+, I believe)
class ETF < ActiveRecord::Base
self.primary_key = 'legacy_id'
self.table_name = 'legacy_etfs'
has_many :closing_prices, foreign_key: 'legacy_etf_id'
end
class ClosingPrice < ActiveRecord::Base
self.primary_key = 'legacy_id'
self.table_name = 'legacy_closing_prices'
belongs_to :etf, foreign_key: 'legacy_etf_id'
end