使用ActiveRecord关联生成模型

use*_*472 14 ruby-on-rails rails-activerecord

伙计们,

我正在创建一个应用程序,我在我的问题空间中有两个实体.一个实体是"生物学家",另一个实体是"实验",现在一个生物学家可以进行许多实验,每个实验都可以有许多生物学家.

我知道如何使用命令行生成器创建模型和路由:

 rails generate scaffold Biologist name:string expertise:string last_pub:text
Run Code Online (Sandbox Code Playgroud)

添加关联的正确方法是什么?它是否会在生成后更新模型代码?我不清楚的是,如果我添加一个"belongs_to"关联后期生成,如何在不运行迁移的情况下在数据库模式中反映出来?在上面的例子中,如果"实验"属于"生物学家",那么"生物学家"表中将有一个外键,如果我在模型类后期生成中添加关联,将如何创建.我对rails非常陌生,所以如果这是一个天真的问题我会道歉.

ste*_*och 46

我认为您正在寻找以下内容:

rails g scaffold Biologist experiment:references
Run Code Online (Sandbox Code Playgroud)

阅读Jose Valim撰写的这篇文章,他将向您展示如何执行上述操作,并从命令行添加db索引:


And*_*des 4

您必须创建迁移以biologist_idexperiments表中添加列,然后belongs_to :biologistexperiments模型中添加关系。

您可以在这里找到更多详细信息。