1

acts-as-taggable-on用来保存多个用户兴趣。我尝试在注册表单上显示固定的复选框列表。下面的代码有效。

= form_for(resource, :as => resource_name, :url => registration_path(resource_name)) do |f|
%p
  - ["music","art","movies"].each do |interest|
    = check_box_tag "user[interested_list][]", interest

问题是,当点击“提交”时,如果页面由于缺少某些字段而重新加载,我没有看到之前选中的复选框,它们都被重置了。

我知道我错过了价值,但我一直在尝试使用类似的东西,但它不起作用

= check_box_tag "user[interested_list][]", interest, params[:user][:interested_list][interest]

我收到以下错误

nil:NilClass 的未定义方法“[]”

任何的想法?

4

1 回答 1

0

解决了。

我只需要检查该值是否存在于数组中。

= check_box_tag "user[interested_list][]", interest, session[:interested_list].include?(interest)
于 2012-12-03T18:41:26.747 回答