Ruby on rails Rails数据库约定
当我查找数据库时,比如说Ruby on rails Rails数据库约定,ruby-on-rails,ruby,Ruby On Rails,Ruby,当我查找数据库时,比如说水果,我可以使用水果.where(“name”=>“Lime”)(或类似)在Lime上调出我的水果百科文章。假设我使用了一些代码,比如Cactus.where(“breed”=>“Saguaro”)。这是否意味着我的数据库是仙人掌?Cactipedia不希望他们的数据库被称为Cactus。这会让他们看起来好像不知道如何让仙人掌多元化。如果是这样,我有什么办法来解决这个问题?您可以随意命名您的表。只需在模型中设置表名: class Something < Active
水果
,我可以使用水果.where(“name”=>“Lime”)
(或类似)在Lime上调出我的水果百科文章。假设我使用了一些代码,比如Cactus.where(“breed”=>“Saguaro”)
。这是否意味着我的数据库是仙人掌?Cactipedia不希望他们的数据库被称为Cactus
。这会让他们看起来好像不知道如何让仙人掌多元化。如果是这样,我有什么办法来解决这个问题?您可以随意命名您的表。只需在模型中设置表名:
class Something < ActiveRecord::Base
self.table_name = "something_else"
end
class Something
如果未明确设置表名
,Rails将自动从模型名派生表名。如果您的模型名为“Cactus”,Rails通常有一些非常好的助手模型,这些模型将自动在表中创建正确的复数形式
如果它没有将“仙人掌”变成“仙人掌”,您可以自己定制屈折变化。查看“”谢谢,幸运的是它没有命名为cactus,Cactipedia/Fructopedia不存在(希望永远不会存在)。请阅读Rails指南和有关数据库的内容(例如MySQL有很好的文档),直到您理解了什么是:数据库、表、列和关系。现在这个问题毫无意义。