나는 여러 부서로 구성된 스포츠 클럽 홈페이지를 운영하고 있습니다. 현재 승인 시스템은 cancan을 사용하여 실현됩니다.has_many association에 대해 여러 개의 값만 허용합니다.
각 부서는 여러 사용자를 가질 수 있으며 각 사용자가 여러 부서에 속할 수 있습니다 : 이것은 아주 잘 작동
has_and_belongs_to_many :users
\ user.rb
has_and_belongs_to_many :departments
#의 department.rb. 그러나 나는 User 양식에서이 연관을 관리 할 수있는 가능성을 원합니다. 거기에는 각 부서에 대한 체크 박스 그룹이 있습니다. 이것은 (simple_form을 사용하는)이 줄에 의해 실현됩니다.
<%= f.association :departments,
:as => :check_boxes,
:collection => Department.specific.order('name' => :asc),
:label_method => :name,
:value_method => :id %>
이제 몇 가지 값만 변경할 수 있습니다. 클라이언트 측에서는 단순히 일부 확인란을 숨기거나 비활성화하여이를 수행 할 수 있습니다. 하지만 다시 확인하지 않으면 서버에 저장되지 않습니다. 확인란 값은 ID 배열로 전송됩니다. 이 배열에는 ID를 조작 할 수있는 큰 잠재력이 있습니다. 서버 쪽에서 현재 사용자에게 부서에 사용자를 할당 할 수있는 권한이 있는지 확인해야합니다. 그가 권리가 없다면 나는이 협회를 변경하지 않고 떠날 필요가있다.
우아한 방법이 있나요?
강력한 매개 변수가있는 Rails 4.0을 사용하고 있습니다.
감사