Sha256: 4a3e5aec6943654d67e1bc4c530e35921aec7ea0662c21944c76ab96af88f5fe
Contents?: true
Size: 660 Bytes
Versions: 5
Compression:
Stored size: 660 Bytes
Contents
module MasterModel extend ActiveSupport::Concern included do acts_as_list validates_uniqueness_of :name, case_sensitive: false validates :name, presence: true validate :name do valid_name? end validates :display_name, presence: true before_validation :set_display_name, on: :create strip_attributes only: :name end # 表示名を設定します。 def set_display_name self.display_name = name if display_name.blank? end private def valid_name? unless name =~ /\A[a-z][0-9a-z_]*[0-9a-z]\z/ errors.add(:name, I18n.t('page.only_lowercase_letters_and_numbers_are_allowed')) end end end
Version data entries
5 entries across 5 versions & 1 rubygems