Files
aperonight/app/models/user.rb
2025-08-28 15:11:42 +02:00

30 lines
1.3 KiB
Ruby
Executable File

# User model for authentication and user management
# Handles user accounts, authentication, and authorization using Devise
class User < ApplicationRecord
# Include default devise modules. Others available are:
# :confirmable, :lockable, :timeoutable, :trackable and :omniauthable
#
# Include default devise modules for authentication
# :database_authenticatable - encrypts and stores password in database
# :registerable - allows users to sign up and edit their accounts
# :recoverable - handles password reset functionality
# :rememberable - manages token-based user remembering
# :validatable - provides email and password validation
# Other available modules are:
# :confirmable - requires email confirmation
# :lockable - locks account after failed login attempts
# :timeoutable - expires sessions after inactivity
# :trackable - tracks sign-in count, timestamps, and IP
# :omniauthable - allows authentication via OAuth providers
devise :database_authenticatable, :registerable,
:recoverable, :rememberable, :validatable
# Relationships
has_many :parties, dependent: :destroy
has_many :tickets, dependent: :destroy
# Validations
validates :last_name, length: { minimum: 3, maximum: 12, allow_blank: true }
validates :first_name, length: { minimum: 3, maximum: 12, allow_blank: true }
end