2009-06-04 5 views
0

사용자를 드래그하여 다른 그룹 (사용자 복사 및 이동)에서 삭제할 수있는 사용자 관리 시스템을 만들려고합니다. 내가 사용라우팅 문제

drop_receiving_element "move_drop_zone_1", 
    :update => "users", 
    :url => move_user_path(:target_node_id => node.id), 
    :method => :put, 
    :accept => "move_user", 
    :hoverclass => "node-active" 

드롭 존을 정의합니다.

경로에 문제가 있습니다. 예상 : {{: 컨트롤러 => "사용자", : target_node_id => 2 => "이동" 행동}

move_user_url 코드의 결과 위 에서 생성하지 못했습니다 행동 => "이동", : 컨트롤러 => "사용자"}, DIFF : {: target_node_id => 2} 내가

는 분명히 어떻게 할 수있는 target_node_id을 기대 것이 아니라 레일 map.resources :users, :member => { :move => :put, :copy => :put }을 정의 내 노선에서

나는 포함한다. 이?

감사 스테인

답변

2

move_user_path는 "회원"경로입니다. 따라서 참조 할 사용자 구성원에 대해 : id를 제공해야합니다.

map.resources :users, :collection => { :move => :put, :copy => :put } 

그리고 경로가된다 :

move_users_path(:target_node_id => node.id) 

희망이 도움이 당신이 당신의 경로를 변경해야합니다,

move_user_path(:id => current_user.id, :target_node_id => node.id) 

을 또는 :

그래서 당신은 할 수 있습니다 .

인 Joerg

+0

감사에 대해

또한, 아주 좋은 자원 자세한 내용입니다. 아직 몇 가지 문제가 있습니다 ... 내가 할 때 <% = link_to "사용자 이동", move_users_path (: target_node_id => 1), : 메서드 => : put %> 사용자 컨트롤러의 업데이트 방법이 호출되고 움직임. move_users_path (: target_node_id => 1) %> 사용자 컨트롤러의 show 메소드가 호출되고 이동되지는 않습니다. map.resources : users, : collection => {: move => : put, : copy => : put}을 경로에 정의했습니다. – Tarscher