2016-12-03 33 views
0

我正在嘗試使用collection_check_boxes方法。Rails collection_check_boxes

A group有很多users和一個用戶可以屬於多個groups

user.rb

class User < ActiveRecord::Base 
has_and_belongs_to_many :groups 
end 

group.rb

class Group < ActiveRecord::Base 
has_and_belongs_to_many :users 
end 

groupes.controller.rb

class GroupsController < ApplicationController 

def new 
    @group = Group.new 
end 
end 

new.html.slim

h1 Groupes 

.hsep 

.container-fluid 

== form_for @group, { html: { class: 'form-horizontal', remote:true, id: 'new_user' } } do |f| 

.form-group 
    .col-sm-10 
     == f.collection_check_boxes :group, :user_ids, User.all, :id, :login 

== f.submit 

我的目標是當創建新的group時,用戶可以從所有用戶中選擇哪個users屬於該組。

錯誤

ActionView::Template::Error (undefined method `merge' for :login:Symbol): 
13: 
14:  .form-group 
15:   .col-sm-10 
16:    == f.collection_check_boxes :group, :user_ids, User.all, :id, :login 
17: 
18:  == f.submit 

我最有可能錯過了如何正確使用collection_check_boxes但我就是無法迴避的固定它自己的東西。

回答

0

看起來你沒有通過「text_method」參數collection_check_boxes

如果有用戶的列name當它添加和刪除:group因爲你form_for

== f.collection_check_boxes :user_ids, User.all, :id, :name 
+0

事實上,更新原有的崗位使用但仍然無法正常工作。 – SORRROW

+0

刪除':'' –

+0

答案已更新。 –

相關問題