2016-12-22 20:00:08 +08:00
|
|
|
class User < ApplicationRecord
|
2016-12-22 20:05:38 +08:00
|
|
|
before_save :default_values
|
|
|
|
|
|
|
|
def default_values
|
|
|
|
self.picurl = 'images/avatars/default/avatar.png'
|
|
|
|
end
|
|
|
|
|
2016-12-22 20:00:08 +08:00
|
|
|
has_many :send_messages, class_name: 'Message', foreign_key: 'send_user'
|
|
|
|
has_many :recieve_messages, class_name: 'Message', foreign_key: 'recieve_user'
|
2016-12-22 20:05:38 +08:00
|
|
|
has_many :micro_posts, dependent: :destroy
|
|
|
|
has_many :comments, class_name: 'Comment', foreign_key: 'user_id', dependent: :destroy
|
2016-12-22 20:00:08 +08:00
|
|
|
|
|
|
|
VALID_EMAIL_REGEX = /\A[\w+\-.]+@([a-z\d\-]+\.)+[a-z]+\z/i
|
|
|
|
before_save { self.email = email.downcase }
|
|
|
|
validates :name, presence: true, length: {maximum: 50}, uniqueness: {
|
|
|
|
case_sensitive: false
|
|
|
|
}
|
|
|
|
validates :email, presence: true, length: {maximum: 255},
|
|
|
|
format: {with: VALID_EMAIL_REGEX}, uniqueness: {
|
|
|
|
case_sensitive: true
|
|
|
|
}
|
|
|
|
has_secure_password
|
|
|
|
validates :password, presence: true, length: {minimum: 6}, allow_nil: true
|
|
|
|
|
|
|
|
end
|