class BaseController < ApplicationController
before_action : current_user
def current_user
@current_user ||= User.first
end
end
module Teams
class BaseController < ::BaseController
before_action :current_team
def current_team
@current_team ||= User.first
end
end
end
module Teams
class ProjectsController < BaseController
def index
@projects = @current_team.projects.merge(@current_user.projects)
end
end
end
需求: 根據(jù) Profile 里面記錄的生日 對(duì)用戶進(jìn)行排序
class UsersController < BaseController
def index
#where 屬于亂入 & 這里是一些比較常見(jiàn)的寫法
#@users = User.joins(:profile).where("user_profile.address LIKE ?", 'HANG').order("user_profile.birth_day")
users = load_users
end
private
def load_users
users = User.includes(:profile).joins(:profile).merge(Profile.order(:birth_day))
raise ErrorOnUsersControllerIndexMethod unless users
return users
end
end