Commit b33fca9dba43af03917a7003da40f5057499fb33

Authored by Pius Uzamere
1 parent 3105fb29

avoiding the database randomization function

Showing 1 changed file with 5 additions and 3 deletions   Show diff stats
app/models/question.rb
@@ -34,10 +34,12 @@ class Question < ActiveRecord::Base @@ -34,10 +34,12 @@ class Question < ActiveRecord::Base
34 memoize :picked_prompt 34 memoize :picked_prompt
35 35
36 def distinct_array_of_choice_ids(rank = 2, only_active = true) 36 def distinct_array_of_choice_ids(rank = 2, only_active = true)
  37 + @choice_ids = choice_ids
  38 + @s = @choice_ids.size
37 begin 39 begin
38 - @the_choice_ids = Set.new  
39 - @the_choice_ids << choices.active.first(:order => 'RAND()', :select => 'id').id  
40 - @the_choice_ids << choices.active.last(:order => 'RAND()', :select => 'id').id 40 + @the_choice_ids = Set.new(@choice_ids.values_at(rand(@s), rand(@s)))
  41 + # @the_choice_ids << choices.active.first(:order => 'RAND()', :select => 'id').id
  42 + # @the_choice_ids << choices.active.last(:order => 'RAND()', :select => 'id').id
41 end until @the_choice_ids.size == rank 43 end until @the_choice_ids.size == rank
42 logger.info "set populated and looks like #{@the_choice_ids.inspect}" 44 logger.info "set populated and looks like #{@the_choice_ids.inspect}"
43 return @the_choice_ids.to_a 45 return @the_choice_ids.to_a