我正在尝试创建一个 Rails 应用程序,根据您的用户类型为不同的表格提供服务,假设您负责库存,因此该应用程序会向您显示与库存相关的表格,问题是我没有事先不知道会有哪些类型的用户,所以我需要一个通用 的方法来解决这个问题。
我的实际用户模型如下所示:
# == Schema Information
#
# Table name: users
#
# id :integer not null, primary key
# created_at :datetime not null
# updated_at :datetime not null
# password_digest :string(255)
# remember_token :string(255)
# username :string(255)
# id_compania :string(255)
# type :integer
# name :string(255)
# admin :boolean default(FALSE)
# empresa_id :integer default(1), not null
#
class User < ActiveRecord::Base
attr_accessible :id_compania, :username, :type, :password, :password_confirmation, :name, :empresa_id
has_secure_password
belongs_to :empresa
before_save { |user| user.username = username.downcase }
before_save :create_remember_token
USERNAME_REGEX = /(^([a-z]{3})-([a-z\d]){5,}$)/
validates :username, `enter code here`presence: true, length: { maximum: 15 }, format: { with: USERNAME_REGEX }
validates :password, presence: true, length: { minimum: 8 }
validates :password_confirmation, presence: true
validates :type, presence: true, length: { maximum: 4 }
validates :id_compania, presence: true, length: { maximum: 3 }
private
def create_remember_token
self.remember_token = SecureRandom.urlsafe_base64
end
end