class GekanatorQuestionSuggestion < ApplicationRecord MAX_QUESTIONS_PER_GAME = 1 belongs_to :gekanator_game belongs_to :user validates :question_text, presence: true, length: { maximum: 1000 } validates :processed, inclusion: { in: [true, false] } validate :question_suggestion_limit_per_game, on: :create private def question_suggestion_limit_per_game return if gekanator_game_id.blank? count = GekanatorQuestionSuggestion.where(gekanator_game_id:).count if count >= MAX_QUESTIONS_PER_GAME errors.add(:base, '質問追加数を超えてゐます.') end end end