gpt4 book ai didi

ruby-on-rails - 我可以在多对多关系中添加到现有的连接表模型吗?

转载 作者:太空宇宙 更新时间:2023-11-03 17:26:24 25 4
gpt4 key购买 nike

我有一个标准的关系:

class User <ActiveRecord:: Base
has_and_belongs_to_many: feeds,: uniq => true
end

class Feed <ActiveRecord:: Base
has_and_belongs_to_many: users,: uniq => true
end

并且根据rails命名约定,连接表被称为'users_feeds'。

我需要扩展连接表的功能,并添加模型 UserFeed(或 UsersFeeds?)。

  1. 添加模型是否违反了 Rails 约定?
  2. 我是否需要更改连接表的名称,并使用选项 :through 定义关系?

最佳答案

为您的连接模型添加一个类就可以了。您应该不需要更改表名。生成的代码将类似于:

class User <ActiveRecord:: Base
has_many :user_feeds
has_many :feeds, :through=>:user_feeds
end

class UserFeed <ActiveRecord:: Base
belongs_to :user
belongs_to :feed
end

class Feed <ActiveRecord:: Base
has_many :user_feeds
has_and_belongs_to_many: users, :through=>:user_feeds
end

关于ruby-on-rails - 我可以在多对多关系中添加到现有的连接表模型吗?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/8574615/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com