2012-09-29 22 views
1

我有一個頁面,用戶選擇首選項 - 我希望他們選擇的複選框在他們重新訪問頁面時(提交後)自動選擇。Rails - 保持複選框檢查重新加載和Redirect_to

我已經看過一些其他線程似乎解決了這個問題,但我是def。卡住了 - 有人可以把一些軌道知識放在我身上嗎?!

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

喜歡控制器:

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

你有第三個參數添加到check_box_tag這樣的:

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

所以複選框被選中,如果像@的category_ids包括類別

+0

我正在領導在正確的方向 - 我得到一個未定義的方法'category_ids'錯誤。 – abhir

+0

啊,我忘記了你需要從類似的id,因爲我認爲他們有一個關係對嗎?試試這個,希望它適合你:<%= check_box_tag「like [category_ids] []」,category.id,@ like.categories.include?(category)%> – Flo

相關問題