簡體   English   中英

使用ActiveRecord關聯生成模型

[英]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.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM