对rails很新,并想知道是否有办法让您从迁移中生成的所有关联都显示在该模型中。例如,在模拟AirBNB应用程序上工作。如果我要生成这样的迁移(已经创建了这些模型)
rails g migration AddListingsToNeighborhood listing:belongs_to
当我运行rake db:migrate时,我的模型仍然是空的。只是想知道是否有一个快捷方式让这些关联填充模型。
谢谢!
答案 0 :(得分:3)
如果您尚未创建模型(或可以覆盖模型),请使用
rails g model Neighborhood listing:references
如果你有模型,只需要创建适当的迁移:
rails g migration AddListingsToNeighborhoods listing:references
数据库迁移 不会 修改模型。
在这些示例中,Neighborhood
获取外键。
如果您希望Listing
拥有外键(并且拥有belongs_to
),那么您需要撤消它们:
rails g model Listing neighborhood:references
rails g migration AddNeighborhoodToListings neighborhood:references
FWIW,随着应用程序的发展,您将经常修改现有模型并添加关系。这意味着手动添加belongs_to
并运行迁移。