WAI -ARIA: Тестирование возможностей Javascript?

В духе прогрессивного улучшения, я хотел бы провести тестирование некоторых возможностей ARIA для реализации дополнительных улучшений, если они поддерживаются браузером. Я не ищу средства чтения с экрана - я Я стремлюсь к тому, чтобы пользователи программ чтения с экрана получали оптимальные впечатления от используемых ими инструментов.

Например, если атрибут aria-live не поддерживается, то реализация бесконечной прокрутки может быть плохой идеей.

Я знаю, что есть Дополнительное беспокойство вызывает то, что браузеры могут поддерживать эти атрибуты, а программа чтения с экрана - нет. Поскольку программы чтения с экрана прозрачно работают в браузерах, я не против, чтобы этот крайний случай игнорировался.

Я никогда не слышал, чтобы кто-то делал что-то подобное. Это так же просто, как тестирование дополнительных свойств DOM, предоставляемых браузерами? Работает ли здесь один из методов тестирования возможностей Марка Пилигрима?

Спасибо! Сообщение и Категория глобализируются с помощью gem globalize3 class Post

У меня есть эта схема: Сообщение принадлежит к категории и Category has_many Post. Сообщение и Категория глобализируются с помощью gem globalize3

class Post < ActiveRecord::Base
  belongs_to :category
  translates :title, :excerpt, :desc # globalize3
end

class Category < ActiveRecord::Base
  has_many :posts
  translates :name # globalize3
end

В моем PostsController я получаю все сообщения с этой строкой кода:

def index
  @posts = Post.includes([:translations, {:category => :translations}])
end

Проблема в том, что у меня есть проблема с запросом n + 1 с таблицей переводов категорий:

Post Load (0.3ms)  SELECT "posts".* FROM "posts"

Post::Translation Load (0.3ms)  SELECT "post_translations".* FROM "post_translations" WHERE ("post_translations".post_id IN (2,3,4))

# START n+1 query block
Category Load (1.9ms)  SELECT "categories".* FROM "categories" WHERE ("categories"."id" IN (9,12,11))
Category::Translation Load (0.4ms)  SELECT "category_translations".* FROM "category_translations" WHERE ("category_translations".category_id = 9) AND ("category_translations"."locale" IN ('it'))
CACHE (0.0ms)  SELECT "category_translations".* FROM "category_translations" WHERE ("category_translations".category_id = 9) AND ("category_translations"."locale" IN ('it'))
Category::Translation Load (0.2ms)  SELECT "category_translations".* FROM "category_translations" WHERE ("category_translations".category_id = 12) AND ("category_translations"."locale" IN ('it'))
CACHE (0.0ms)  SELECT "category_translations".* FROM "category_translations" WHERE ("category_translations".category_id = 12) AND ("category_translations"."locale" IN ('it'))
Category::Translation Load (0.2ms)  SELECT "category_translations".* FROM "category_translations" WHERE ("category_translations".category_id = 11) AND ("category_translations"."locale" IN ('it'))
CACHE (0.0ms)  SELECT "category_translations".* FROM "category_translations" WHERE ("category_translations".category_id = 11) AND ("category_translations"."locale" IN ('it'))
# END n+1 query block

Category::Translation Load (0.5ms)  SELECT "category_translations".* FROM "category_translations" WHERE ("category_translations".category_id IN (9,12,11))

Как я могу решить эта проблема с запросом n + 1?

7
задан Pioz 2 December 2010 в 16:09
поделиться