【问题标题】:Rails4 - How to add reference to an existing table?Rails4 - 如何添加对现有表的引用?
【发布时间】:2014-11-18 01:35:41
【问题描述】:

我相信以下是添加参考的步骤。

$ rails generate model Country name:string
$ rails generate model User name:string gender:boolean birthdate:date country:references
$ rake db:migrate

添加 - 用户属于_to a Country 和 Country has_many Users 在模型中

但我有一个已经存在的项目,我想在其中添加参考。 请确认这是否是添加对现有表的引用的正确方法。

$ rails generate model User name:string gender:boolean birthdate:date
$ rails generate model Country name:string 
$ rails generate migration AddCountryRefToUsers country:references
$ rake db:migrate

添加 - 用户属于_to a Country 和 Country has_many Users 在模型中

希望这两种方法之间没有区别,并且应用程序以后不会爆炸。 我只是想确定我是否错过了发生在窗帘后面的事情。

【问题讨论】:

    标签: ruby-on-rails


    【解决方案1】:

    您是对的,没有区别,只需确保使用正确的表名命名迁移,例如,添加对表发票的移动引用:

    rails g migration AddMovementRefToInvoices movement:reference
    

    【讨论】:

    • 谢谢。应该是运动还是运动? rails g 迁移 AddMovementRefToInvoices 移动:参考
    • 你是对的,单数是正确的形式(已编辑)
    • 你需要复数引用 --> movement:references 否则这会认为它是类型引用的 add_column 迁移,这是一个 ActiveRecord::InvalidStatement 错误
    猜你喜欢
    • 1970-01-01
    • 2022-11-11
    • 1970-01-01
    • 1970-01-01
    • 2014-02-08
    • 2012-04-07
    • 2014-04-02
    • 1970-01-01
    • 2021-12-17
    相关资源
    最近更新 更多