次のような多対多の関連付けがあります
class User < ActiveRecord::Base
has_many :working_groups
has_many :groups, :through => :working_groups
class Group < ActiveRecord::Base
has_many :working_groups
has_many :users, :through => :working_groups
class WorkingGroup < ActiveRecord::Base
belongs_to :user
belongs_to :group
また、Working_Groups 関連付けには、各関係に関する追加情報 (順序やメンバーシップの種類など) があります。
create_table "working_groups", :force => true do |t|
t.integer "group_id"
t.integer "user_id"
t.integer "position"
t.string "role"
t.datetime "created_at", :null => false
t.datetime "updated_at", :null => false
ユーザー ビューでは、ユーザーが属するすべてのグループとそのメンバーシップの種類 (結合テーブルに格納されている) のリストを表示しようとしています。これを成し遂げるために私が見つけた唯一の方法は、このようなものであり、これは非常に醜く、これまでで最も効率的なものではありません...
名前 役割これを行うより良い方法はありますか?もっと良い方法があるはず...