2012-09-29 3 views
1

사용자가 환경 설정을 선택하는 페이지가 있습니다 - 제출 한 후 페이지를 다시 방문 할 때 자동으로 선택되도록 선택한 체크 박스를 원합니다.레일 - 리로드 및 리디렉트시 체크 박스 선택

나는이 질문을 다루는 것처럼 보이는 몇 가지 다른 스레드를 보았다. 그러나 나는 def이다. 붙어있어 - 누군가가 나에 대한 몇 가지 레일 지식을 던질 수 있습니까?!

> <%= form_for @like do |f| %> 
> <% Category.select { |category| category.gender == 'guy' }.each do |category| %> 
> <%= check_box_tag 'category_ids[]', category.id, true %> 

이 좋아 컨트롤러 : 같은 @의 category_ids 카테고리 것을 포함하는 경우

<%= check_box_tag "category_ids[]", category.id, @like.category_ids.include?(category.id) %> 

그래서 확인란이 선택 :이 같은 check_box_tag에 세 번째 인수를 추가해야

def create 
    @like = Like.new(params[:like]) 
    params[:category_ids].each do |category| 
     Like.create(:category_id => category, :user_id => current_user.id) 
    end 
    redirect_to new_preference_path 
    end 
+0

컨트롤러 액션 코드와 양식보기 코드를 붙여 넣을 수 있습니다. – vajapravin

답변

1

+0

전 방향입니다. 올바른 방향으로 - 정의되지 않은 메소드'category_ids' 오류가 나타납니다. – abhir

+0

Ah sry 나는 그들이 관계가 정상적으로 유지 되었기 때문에 카테고리 ID가 필요하다는 것을 잊어 버렸습니까? 이것을 시도해보십시오 : [] ", category.id, @ like.categories.include? (category) %>와 같이 <% = check_box_tag" – Flo