[英]generating model with ActiveRecord associations
伙計們,
我正在創建一個應用程序,我在我的問題空間中有兩個實體。 一個實體是“生物學家”,另一個實體是“實驗”,現在一個生物學家可以進行許多實驗,每個實驗都可以有許多生物學家。
我知道如何使用命令行生成器創建模型和路由:
rails generate scaffold Biologist name:string expertise:string last_pub:text
添加關聯的正確方法是什么? 它是否會在生成后更新模型代碼? 我不清楚的是,如果我添加一個“belongs_to”關聯后期生成,如何在不運行遷移的情況下在數據庫模式中反映出來? 在上面的例子中,如果“實驗”屬於“生物學家”,那么“生物學家”表中將有一個外鍵,如果我在模型類后期生成中添加關聯,將如何創建。 我對rails非常陌生,所以如果這是一個天真的問題我會道歉。
我認為您正在尋找以下內容:
rails g scaffold Biologist experiment:references
閱讀Jose Valim撰寫的這篇文章 ,他將向您展示如何執行上述操作,並從命令行添加db索引:
您必須創建遷移以將biologist_id
列添加到experiments
表中,然后在experiments
模型中添加belongs_to :biologist
關系。
你可以在這里找到更多細節。
我會為每個模型生成一個模型,然后創建一個連接表,因為你有很多有很多關系。 如果您正確遵循慣例,rails應該了解給定連接表的關系。
通常,如果需要修改活動記錄關系,則應使用has_many或has_and_belongs_to_many關系在模型中執行此操作。
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.