2012-10-03 3 views
0

시스템 비공개 메시지를 만들고 있습니다. 내가 확인란 모든 객체를 잡을 원하는모든 개체가 체크 박스가 선택된 상태에서 수신 됨, 레일 3.2.8

체크 쓰레기에 사용자가 클릭하면, 스팸 메일에 클릭이 메시지 컨트롤러 내부에 스팸 행동에 보내는 조치를 쓰레기하고 보낼 수 있습니다.

<input class="check" id="506c82001d41c82198000056" name="506c82001d41c82198000056" type="checkbox" value="506c82001d41c82198000056"> 

가 생성됩니다 :

enter image description here

이 내 체크 박스의 HTML이다 : 당신은 다음 이미지를 볼 수 있습니다

<%= check_box_tag m.id, m.id, false, :class => "check" %> 

삭제 및 스팸 버튼 형식의 링크입니다 :

<%= link_to "Delete", delete_message_path %> 
<%= link_to "Spam", spam_message_path %> 

각 작업에 체크 박스 체크로 표시된 결과를 어떻게 보낼 수 있습니까?

대단히 감사합니다. 당신이 순수 HTML 구현을 원하는 경우

+0

아마 일부 자바 스크립트로? – MrYoshiji

답변

1

, 당신은 거기에서 삭제하고 스팸 로직 처리하거나 그 행위로 리디렉션 단일 컨트롤러 액션 노선 양식을 수 중 하나. 당신이 어떤 URL로 이어질 태그를 제출할 수 있습니다

<%= form_tag('/messages_cleanup', method: :put) %> 
    <%= submit_tag "Delete" %> 
    <%= submit_tag "Spam" %> 

    <%= message.each do |m| %> 
    <%= check_box_tag m.id, m.id, false, :class => "check" %> 
    <% end %> 
<% end %> 

양식에

match /messages_cleanup, :to => 'messages#cleanup' 같은 경로를 가지고 /messages_cleanup을 말한다.

그런 다음 메시지 컨트롤러에, 당신은 params[:commit] 필드에 제출 유형을 확인할 수 있습니다.

def cleanup 
    case params[:commit] 
    when "Delete" 
     # either handle delete logic here or redirect to delete path 
    when "Spam" 
     # either handle spam logic here or redirect to spam path 
    end 
end 
+0

대단히 감사합니다! 'form_for' 대신에'link_to'로 만들 수 있습니까? simple_form gem을 사용합니다 ... – hyperrjas

+0

'simple_form'을 사용하여이 작업을 수행 할 수 있어야합니다. 왜'link_to'를 사용하고 싶습니까? – cdesrosiers

+0

나는 트위터 부트 스트랩 프레임 워크 http://twitter.github.com/bootstrap/base-css.html#buttons를 사용합니다. 버튼들은'

관련 문제