我的 application_controller.rb 中有几个方法,因为我需要能够从我的应用程序的任何地方调用它们。我也做了很多参数检查,看看是否应该允许/禁止该方法。
寻找有关此代码的建设性想法:
- 关于重构参数部分的任何想法?
- 关于重构这个的任何想法可能会移出application_controller?(使其成为模型方法,但这不能重定向到某些 url/位置)
is_deleted 方法:
def is_deleted?
if user_signed_in?
if params[:action] != "reactivate" &&
params[:action] != "destroy" &&
params[:action] != "enable" && current_user.is_deleted == true
redirect_to '/reactivate'
end
end
end
is_banned? 方法:
def is_banned?
if user_signed_in?
if current_user.present? && current_user.banned?
sign_out current_user
flash[:error] = "Your account has been suspended for continued misbehaviour"
redirect_to login_path
end
end
end