Logo Questions Linux Laravel Mysql Ubuntu Git Menu
 

Simple form custom input with acts-as-taggable-on

I have some problems with Simple_form and acts-as-taggable-on.

I have a object "Pictogram" with some tags like "door" and "emergency"

I use this code in my form

= f.input :tag_list

When I edit my Pictogram the system delete my comma and display my text_field like that "door emergency" if i save my two tags are deleted and replaced by one tag "door emergency"

I'm looking for a solution on the net and many peoples advise to create a custom input in simple_form but I don't where to begin.

I create a file tag_input.rb in app/inputs and I add this code

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

 end
end

But now I'm lost.

Sorry for my English, it's not my native language

like image 370
Gregory Frerot Avatar asked Feb 03 '15 13:02

Gregory Frerot


2 Answers

Here's what you do based on this

= f.input :tag_list, input_html: {value: @something.tag_list.to_s}
like image 114
carl Avatar answered Oct 13 '22 01:10

carl


Custom input contains simple form tags

Check out this wiki https://github.com/plataformatec/simple_form/wiki/Adding-custom-input-components

Inside you can build comma separated string of values

value = object.tags.join(',')
text_field_tag attribute_name, value

Something like that, don't have a simple form nearby, so can't debug this code.

But the main idea I think is clear

like image 45
Stanislav Mekhonoshin Avatar answered Oct 13 '22 00:10

Stanislav Mekhonoshin