Как я могу удалить тег из списка тега act_as_taggable плагина?

Я попытался уничтожить теги из данного кода, но он не работает. Как это может быть выполнено?

 @tag = Tag.find_by_name(params[:name])
  @tag.destroy
  render :update do |page|
    page[:divtag].innerHTML = render :partial => "controls/tag_list"
  end
7
задан gsoni 13 December 2013 в 13:46
поделиться

1 ответ

Как уже упоминалось, выберите правильный набор для задачи, и, вероятно, список будет тем, что вам нужно. Смешение с равными (), хэш-кодом () или compeyTo () для разрыва идентичности, как правило, является плохой идеей просто вклинить экземпляр в неправильную коллекцию для начала. Что еще хуже, это может привести к нарушению кода в других областях применения, которые зависят от этих методов, дающих достоверные результаты сравнения, и может быть очень трудно отладить или отследить такие ошибки.

-121--3211970-

Попробуйте:

this.GetType().Name
-121--1812923-

Приведенный вами пример кажется нарушенным. Как правило, имеется список тэгов, принадлежащих модели (например, пользовательская модель). Тогда можно было бы назвать что-то подобное:

# Find a user
@user = User.find_by_name("Bobby")
# Show available tags
@user.tag_list # => ["awesome", "slick", "hefty"] as TagList
# Remove the "slick" tag
@user.tag_list.remove("slick")
# Store change
@user.save

Для получения дополнительной информации см. readme с пометкой (к сожалению, удаление тегов не объясняется).

13
ответ дан 6 December 2019 в 10:50
поделиться
Другие вопросы по тегам:

Похожие вопросы: