我有两种模式:用户和分会,我有很多可能的关系,如:
user has_and_belongs_to_many clubs
club has_and_belongs_to_many users
现在,我将有第三个表格,其中包含此关系的结果:
user_clubs(user_id,club_id)
例如,在生成脚手架时, rails生成脚手架用户名:string birth_date:date 性别:字符串login_id:整数,如何生成该关系?以同样的方式?
谢谢
答案 0 :(得分:3)
您需要使用generate migration
rails g migration create_club_users user_id:integer club_id:integer
它将创建以下迁移:
class CreateClubUsers < ActiveRecord::Migration
def change
create_table :club_users do |t|
t.integer :user_id
t.integer :club_id
end
end
end
然后,您应该将id
设置为false
,而不是Create an ActiveRecord database table with no :id column?
我建议您阅读WHY YOU DON’T NEED HAS_AND_BELONGS_TO_MANY RELATIONSHIPS。
答案 1 :(得分:0)
你可以试试这个:
rails g migration CreateClubsUsersJoinTable club_id:integer user_id:integer
在rails
中创建has_and_belongs_to_many
关联的加入表时,您应该按照按字母顺序排列的模型
请参阅此链接以获取进一步的帮助
http://apidock.com/rails/ActiveRecord/Associations/ClassMethods/has_and_belongs_to_many