我要杀的反模式是:
- if !current_user
# do something
- if !member
# do something else
- if admin
# blah blah blah
- else
# Bored now.
我怀疑答案与视图助手和部分有关,但我想知道一些最佳实践和设计模式是什么。谢谢!
答案 0 :(得分:0)
我从我的控制器那里做了很多事情:
before_filter :require_user
def require_user
unless current_user
store_location
flash[:notice] = "You must be logged in to access this page"
redirect_to login_url
return false
end
end
但是,根据您的角色(管理员,用户,成员),您可以执行相同的任务。这样,在呈现视图之前,您是控制器将负责它们的定向。