如何过滤rails表单以仅显示没有标记的对象,并且由当前用户



我使用的是acts_as_taggable_on,标签与Brand模型相关联。用户通过User模型,然后通过表单部分向每个品牌添加标签。问题是表单部分(在控制器的更新方法中)显示了特定于品牌实例的所有标签,而不是仅显示当前用户的tagger_id标记的标签。

第二部分是,我希望表单只显示当前用户还没有标记的品牌实例。我已经在下面的品牌模型中定义了空标记,但不知道如何在表单字段中调用它们。

<

表单视图/strong>

<%= form_for @brand, :html => {:multipart => true} do |f| %>  
<%= f.label :tag_list, "Your tags" %>  <%= f.text_field :tag_list %>
<%= f.submit "Tag" %></p>
控制器

@brand = current_user.brands.includes(:taggings).where(:taggings => { :id => nil } ).order("RANDOM()").first

问题的第一部分是通过在表单中添加以下内容来解决的:

<%= f.label :tag_list, "Your tags" %>  <%= f.text_field :tag_list, :value => @brand.tags_from(current_user) %>

相关内容

  • 没有找到相关文章