Ruby on rails Rails与非Rails数据库设计

Ruby on rails Rails与非Rails数据库设计,ruby-on-rails,ruby,database,Ruby On Rails,Ruby,Database,完全新手研究轨道。Rails能否与不符合Rails默认命名和设计约定的只读模式一起使用 例如,我的数据库模式具有使用字符串列作为唯一主键的基表。例如,名为Jobs的基表可能具有定义为Jobs.Job的唯一主键,其值可能为“D01234”。现在,作业的子实体可能是CostCodes,其中唯一的主键是CostCodes.Job(返回作业表的FK引用)和CostCodes.CostCode(本地字符串列)的集合 为了它的价值。。。这是stock Sage Timberline Office数据库 有指

完全新手研究轨道。Rails能否与不符合Rails默认命名和设计约定的只读模式一起使用

例如,我的数据库模式具有使用字符串列作为唯一主键的基表。例如,名为Jobs的基表可能具有定义为Jobs.Job的唯一主键,其值可能为“D01234”。现在,作业的子实体可能是CostCodes,其中唯一的主键是CostCodes.Job(返回作业表的FK引用)和CostCodes.CostCode(本地字符串列)的集合

为了它的价值。。。这是stock Sage Timberline Office数据库


有指针吗?

您需要打开特定表格的模型,并设置以下内容:

set_table_name 'user'
set_primary_key 'user_name'
如果要管理关系,可能需要显式指定联接表:

has_and_belongs_to_many :page, :join_table => 'user_page'
是的,可以做到

Dave Thomas描述了一些必要的东西:指令,如

set_table_name  "orders"
set_primary_key "o_id"
在ActiveRecord模型定义中

更多参考资料:

谷歌搜索“activerecord legacy database”应该能找到更多的信息。

是的,activerecord(默认的ORM)可以让你自定义你需要自定义的关于你正在访问的数据库的任何内容-有关详细信息,请参阅Mike和Robotsu的答案


您还可以用另一种更灵活的ORM替换ActiveRecord。这是一个替代品,似乎有一些牵引力

其他答案已经涵盖了您的问题,但所有这些ActiveRecord问题的一个很好的资源是Apress的Pro-ActiveRecord,它非常好,您应该查找它。

我已经在谷歌上搜索了很多次,但这些搜索词为我找到了答案: