gpt4 book ai didi

ruby-on-rails - rails 4 : text_field for acts_as_taggable_on not separating tags with a comma

转载 作者:行者123 更新时间:2023-12-04 05:49:15 24 4
gpt4 key购买 nike

我试图在我的表单中获取 text_field 部分到逗号分隔的acts_as_taggable_on 标签。现在,当我重新加载页面时,逗号消失了,所以如果一个字段有两个或多个标签,它们会变成一个大标签。例如,我得到“Tag1 Tag2 Tag3”而不是“Tag1, Tag2, Tag3”。我在 3.4.2 上使用的是作为可标记的行为。

这是我的 _form.html.erb 部分的:

<h2>Tags:</h2>
<p>Please separate the tags with a comma ','</p>

<% @article.tag_types.each do |tag| %>
<div class="form-group">
<strong><%= label_tag tag.to_s.titleize %></strong><br />
<%= f.text_field "#{tag.to_s.singularize}_list".to_sym, :placeholder => "Comma-separated list of #{tag.to_s}", class: 'form-control' %>
</div>
<% end %>

每次我重新加载编辑页面时,输入值都会以某种方式从已经存在的标签中删除逗号,因此文本字段如下所示:
<input id="article_country_list" class="form-control" type="text" name="article[country_list]" value="China U.S.A." placeholder="Comma-separated list of countries">

而不是 value="China, U.S.A."理所当然。

这是我的模型, article.rb :
class Article < ActiveRecord::Base
acts_as_taggable_on :people, :cities, :countries, :other
end

任何帮助将非常感激 :)

谢谢!

最佳答案

显然这是一个 new security feature .

我通过执行以下操作解决了逗号分隔问题:

<% @article.tag_types.each do |tag| %>
<div class="form-group">
<strong><%= f.label tag.to_s.titleize %></strong><br />
<% tag_sym = "#{tag.to_s.singularize}_list".to_sym %>
<% tag_list = "#{tag.to_s.singularize}_list" %>
<%= f.text_field tag_sym, value: @article.send(tag_list).to_s, :placeholder => "Comma-separated list of #{tag.to_s}", class: 'form-control' %>
</div>
<% end %>

关于ruby-on-rails - rails 4 : text_field for acts_as_taggable_on not separating tags with a comma,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/27646714/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com