使用Ruby on Rails的现有SQL Server数据库

div*_*ivz 3 ruby sql-server ruby-on-rails ruby-on-rails-3

我正处于学习Ruby的早期阶段.我真的不知道如何使用在ruby上填充表和数据的现有数据库.每个指南,我在互联网上找到的每篇文章总是使用迁移功能创建一个新文章.

但是在RoR上使用SQL Server中的现有数据库的步骤是什么?

Wes*_*ble 9

朋友,你很幸运.我的第一个Rails项目(7年前)是针对一个可怕的SQL Server数据库.

根据以上所述,您需要适当地设置database.yml.但对于现有数据库,显然表和列名称不太可能符合Rails约定.好消息是你可以覆盖所有这些默认值.以下是这些指令的非详尽列表:

在AR :: Base的模型中,

set_table_name'actual_table_name'set_primary_key'actual_primary_key_name
'

在各种关联指令(has_one,has_many,belongs_to)上,有:foreign_key键,用于指定外键的名称.

现在,MS SQL Server允许您执行的任务之一是TERRIBLE,您可以在列名中嵌入空格.不用担心,您仍然可以使用write_attribute("badly named column")和read_attribute("badly named column")通过名称引用这些列.您也可以在各种指令中引用它们,如下所示:

validates_length_of"传真号码",:maximum => 17 ,: allow_nil => true

最后,您可以参考这些恶意命名的列生成的隐含方法,如下所示:

self.send('Fax Number =',new_fax_number)

显然,您不能将它们称为符号,因为Ruby符号中不允许使用空格.

祝你好运,下次我希望你能使用真正的RDBMS,比如Informix :).