Установка рабочих квалификаций с RTurk и Turkee - PullRequest
0 голосов
/ 16 августа 2011

Я использую гем Turkee (https://github.com/aantix/turkee) с моим приложением Rails для взаимодействия с Mechanical Turk. Я создаю HIT примерно так:

h = RTurk::Hit.create(:title => name || DEFAULT_TITLE) do |hit|
  hit.assignments = size
  hit.description = DEFAULT_DESCRIPTION
  hit.reward      = DEFAULT_REWARD
  hit.lifetime    = DEFAULT_DURATION
  hit.question(survey_url, :frame_height => 1000)

end

Turkee::TurkeeTask.create(:sandbox             => RTurk.sandbox?,
                          :hit_title           => (name || DEFAULT_TITLE),
                          :hit_description     => DEFAULT_DESCRIPTION,
                          :hit_reward          => DEFAULT_REWARD.to_f,
                          :hit_num_assignments => size.to_i,
                          :hit_lifetime        => (DEFAULT_DURATION.seconds/1.day).to_i,
                          :form_url            => survey_url,
                          :hit_url             => h.url,
                          :hit_id              => h.id,
                          :task_type           => '',
                          :batch_id            => id,
                          :complete            => false)

Все работает нормально, но я хочу добавить квалификацию, чтобы убедиться, что любой, кто выполняет задачу, из США. Я просмотрел документы и знаю, что это возможно, но мне сложно понять, как именно это реализовать. У кого-нибудь есть предложения?

Заранее спасибо:)

1 Ответ

2 голосов
/ 01 ноября 2011

Вы хотите добавить квалификацию страны. Вы можете изменить свой код создания попадания следующим образом (см. Последнюю строку)

h = RTurk::Hit.create(:title => name || DEFAULT_TITLE) do |hit|
  hit.assignments = size
  hit.description = DEFAULT_DESCRIPTION
  hit.reward      = DEFAULT_REWARD
  hit.lifetime    = DEFAULT_DURATION
  hit.question(survey_url, :frame_height => 1000)
  hit.qualifications.country :eql => ['US']
end
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...