带有act-as-taggable-on的简单表单自定义输入

Gre*_*rot 4 ruby ruby-on-rails acts-as-taggable-on simple-form ruby-on-rails-4

我在Simple_form和act-as-taggable-on方面遇到了一些问题.

我有一个对象"象形图",有一些标签,如" "和" 紧急 "

我在表单中使用此代码

= f.input :tag_list
Run Code Online (Sandbox Code Playgroud)

当我编辑我的象形图时,系统删除我的逗号并显示我的text_field就像"门紧急",如果我保存我的两个标签被删除并替换为一个标签"门紧急"

我正在网上寻找解决方案,许多人建议在simple_form中创建自定义输入,但我不知道从哪里开始.

我在app/inputs中创建了一个文件tag_input.rb,然后添加了这段代码

class TagInput < SimpleForm::Inputs::Base
 def input(wrapper_options)

 end
end
Run Code Online (Sandbox Code Playgroud)

但现在我迷路了.

对不起我的英语,这不是我的母语

小智 12

以下是您基于做的事情

= f.input :tag_list, input_html: {value: @something.tag_list.to_s}
Run Code Online (Sandbox Code Playgroud)


Sta*_*hin 1

自定义输入包含简单的表单标签

查看此维基https://github.com/plataformatec/simple_form/wiki/Adding-custom-input-components

在里面你可以构建逗号分隔的值字符串

value = object.tags.join(',')
text_field_tag attribute_name, value
Run Code Online (Sandbox Code Playgroud)

类似的东西,附近没有简单的表单,因此无法调试此代码。

但我认为主要思想很明确