我正在尝试将 ActiveRecord 模型(pos)中的字段分配给值 1+ 迄今为止的最高值。以下,在任一版本中,都会产生一个无限循环。我不知道为什么。你能看见它吗?
class Question < ActiveRecord::Base
attr_accessible :text, :pos, :data_type, :active
has_many :values
belongs_to :program
after_initialize :assign_pos
def row_label
text
end
def self.highest_pos
self.order("pos DESC").first
end
def assign_pos
puts "********* #{Question.highest_pos + 1}" # option 1
self.pos = Question.highest_pos + 1 # option 2
end
end