用 belongs_to 可以创建模型与模型之间的一对一的关联.. 比如一个文章模型对应一个用户模型,也就是一篇文章只能属于一用户。
先去创建两个模型 ... rails generate model ... 创建一个模型 .. 名字是 Post . .. 添加一个 title 字段,类型是 string ..
rails generate model Post title:string
再去创建一个模型 ... 名字是 User ... 添加一个 name 字段,类型是 string ..
rails generate model User name:string
然后打开创建好的 Post 模型 ... 在这个模型里描述一下它跟 User 模型的关系 ... 用一个 belongs_to .. :user ,注意 user 用的是单数形式 ..
在这个模型里用了 belongs_to,我们就需要在这个模型的表里添加一个外键 ..
再打开创建 Post 模型的时候给我们生成的这个 Migration ..
用一下 t.belongs_to .. 名字是 :user .. . 再给它添加一个索引 ...
t.belongs_to :user, index: true
保存 ... 再去运行一下 Migration ... rails db:migrate ...
完成以后,查看一下应用的数据库里的数据表 ... 这里会有一个 posts 表,还有一个 users 表 ...
然后再检查一下 posts 表的结构 .... 你会发现,它里面有一个 user_id 这个栏,在这个表里,它就是一个外键 ... 它的值对应的就是 users 表里的 id 栏的值 ...