Rails: не может установить или обновить TAG_LIST, используя текстовое поле с помощью ACTS_AS_TAGGABLE_ON

StackOverflow https://stackoverflow.com/questions/4524104

Вопрос

Привет всем, я пытаюсь добавить теги в систему фотогалереей 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

Сделайте модель фото. Просто как тот.

Лицензировано под: CC-BY-SA с атрибуция
Не связан с StackOverflow
scroll top