Я считаю, что есть способ:

му после поиска драгоценного камня для моего приложения на rails я обнаружил, чтоакты-а-taggable драгоценный камень. Установив его и поиграв в него, я обнаружил, что он хранит все теги внутри тега db, который просто хранит имя Tag.name без контекста, вместо этого контекст содержится в отношении: through db (тегирование). Для большинства целей я вижу, что это идеально. За исключением моего приложения, я хочу иметь возможность предлагать пользователю возможность пометить тегами на основе уже существующих тегов (например, запретить им создавать свои собственные) иакты-а-taggable не имеет возможности искать все теги в пределах одного встроенного контекста (например, если бы я представлял автозаполнение тега db, в моем приложении были бы все теги, что не то, что я хочу)

Приведенный ниже метод - это то, что я только что уточнил, чтобы посмотреть, сработает ли это (что оно делает), но мне было интересно, если я что-то упустилакты-а-taggable, Я имею в виду, я не вижу нигде, который предлагает такой метод?

<% ActsAsTaggableOn::Tagging.find_all_by_context("tags").each do |tagging| %>
  <%= tagging.tag %>
<% end %>

Если, например,акты-а-taggable не делает это, это лучший способ сделать это? Я чувствую себя немного неэффективно. Буду ли я лучше выполнять пользовательский запрос SQL вместо маршрутизацииакты-а-taggable?

Если это поможет, вот хвост моего журнала:

Started GET "/users" for 127.0.0.1 at 2011-01-04 14:46:20 +0000
Processing by UsersController#index as HTML
SQL (0.5ms)   SELECT name
FROM sqlite_master
WHERE type = 'table' AND NOT name = 'sqlite_sequence'
User Load (0.1ms)  SELECT "users".* FROM "users"
ActsAsTaggableOn::Tagging Load (0.5ms)  SELECT "taggings".* FROM "taggings" WHERE ("taggings"."context" = 'languages')
ActsAsTaggableOn::Tag Load (0.1ms)  SELECT "tags".* FROM "tags" WHERE ("tags"."id" = 2) LIMIT 1
Rendered users/index.html.erb within layouts/application (10.4ms)

Ответы на вопрос(1)

Ваш ответ на вопрос