Commit b33fca9dba43af03917a7003da40f5057499fb33
1 parent
3105fb29
Exists in
master
and in
1 other branch
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 | 34 | memoize :picked_prompt |
35 | 35 | |
36 | 36 | def distinct_array_of_choice_ids(rank = 2, only_active = true) |
37 | + @choice_ids = choice_ids | |
38 | + @s = @choice_ids.size | |
37 | 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 | 43 | end until @the_choice_ids.size == rank |
42 | 44 | logger.info "set populated and looks like #{@the_choice_ids.inspect}" |
43 | 45 | return @the_choice_ids.to_a | ... | ... |