Dra*_* C. 25 activerecord ruby-on-rails
我正在阅读Rails指南,我找到了以下代码行:
class CreateComments < ActiveRecord::Migration
def change
create_table :comments do |t|
t.string :commenter
t.text :body
t.references :post
t.timestamps
end
add_index :comments, :post_id
end
end
Run Code Online (Sandbox Code Playgroud)
我还阅读了Michael Hartl的书,Rails Tutorial,我没有找到任何关于上面代码中使用的"t.references"的内容.它有什么作用?在Michael的书中,我在模型中使用了has_many和belongs_to关系,而在迁移中没有使用任何关系(不是事件t.belongs_to).
Tim*_*van 29
这是Rails最近的一个新增功能,因此您提及的书中可能没有涉及到它.您可以在Rails指南的迁移部分中阅读它.
当你使用生成时,比方说
rails generate model Thing name post:references
Run Code Online (Sandbox Code Playgroud)
...迁移将为您创建外键字段,以及创建索引.这是什么t.references.
你可以写
rails generate model Thing name post_id:integer:index
Run Code Online (Sandbox Code Playgroud)
得到了相同的最终结果.
| 归档时间: |
|
| 查看次数: |
38789 次 |
| 最近记录: |