Rails: не может установить или обновить TAG_LIST, используя текстовое поле с помощью ACTS_AS_TAGGABLE_ON
-
13-10-2019 - |
Вопрос
Привет всем, я пытаюсь добавить теги в систему фотогалереей Rails, над которой я работаю. Он работает с самого конца, но если я попытаюсь установить или изменить его в представлении формы, это не работает.
Я добавил ACTS_AS_TAGGABLE в модель фотографии и сделал миграции. Мой строитель галереи запрограммирован, чтобы автоматически добавить один тег к каждой фотографии, которую он создает. Это работает нормально, как будто он настраивал его для консоли. Тем не менее, я не могу установить теги, используя текстовую_филд в форме фото.
Вот код, который я добавил в свою фотографию:
<p>
<%= f.label :tag_list %><br />
<%= f.text_field :tag_list %>
</p>
Теперь это довольно тривиально, и с тех пор: TAG_LIST поддерживает одностороннее задание запятую (например, tag_list = "this, что-то еще" #=> ['this', 'the', 'the Other']), я Не понимайте, почему использование текстового поля не работает. И чтобы иметь еще меньше смысла, если список тегов уже заполнен, список все равно будет отображаться в текстовом поле при редактировании фотографии. Я просто не могу внести какие -либо изменения в список. Документация на их странице GitHub, по -видимому, не дает никакой информации о том, как установить эти значения из представления. Любые идеи?
О, и я использую версию Gem Rails 3.
Решение
Я понял. Оказывается, ACTS_AS_TAGGABLE не дает вам аксессуаров для TAG_LIST автоматически. Мой код в представлении был правильным, но мне нужно было добавить
attr_accessor :tag_list
Сделайте модель фото. Просто как тот.