我有一个包含3个表的sqlite3数据库,其中id
列为主键,但没有created_at
或update_at
列。
我想在Rails3应用程序中使用它。 如何将其正确转换为“Rails数据库”?
答案 0 :(得分:1)
听起来你想要一个单独的rails应用程序来访问两个不同的数据库?您可能需要做两件事:
对于第一项,您可以按照以下步骤操作:Connecting Rails 3.1 with Multiple Databases
对于第二项,如果表格不遵循Railsy命名方式,您可以创建一个如下所示的模型:
# app/models/foo.rb
class Foo < ActiveRecord::Base
establish_connection "your_sqlite_connection_name_#{Rails.env}"
self.table_name = "name_of_table_in_sqlite_db"
end
答案 1 :(得分:0)
编写一个迁移来添加有问题的表中的这两个字段。
例如,
命令行类似script/generate migration add_timestamps_to_user
然后编辑迁移并将两个字段放在那里。
e.g。
def change
add_column :users, :created_at, :date
add_column :users, :updated_at, :date
end
另外,请确保外键的格式为othertablename_id,否则请考虑使用rename_column
迁移重命名。