加入收藏 | 设为首页 | 会员中心 | 我要投稿 李大同 (https://www.lidatong.com.cn/)- 科技、建站、经验、云计算、5G、大数据,站长网!
当前位置: 首页 > 百科 > 正文

ruby-on-rails – Rails的新手:你如何在rails应用程序中使用app

发布时间:2020-12-17 03:36:22 所属栏目:百科 来源:网络整理
导读:我刚刚进入轨道并开始慢慢理解它.有人可以解释或给我关于在application_controller内部编码的好处或时间和原因的想法吗?什么是用例.你是如何在rails应用程序中使用应用程序控制器的?我不想在那里放太多代码,因为根据我的理解,这个控制器会被调用每个请求.
我刚刚进入轨道并开始慢慢理解它.有人可以解释或给我关于在application_controller内部编码的好处或时间和原因的想法吗?什么是用例.你是如何在rails应用程序中使用应用程序控制器的?我不想在那里放太多代码,因为根据我的理解,这个控制器会被调用每个请求.这是真的?

解决方法

ApplicationController实际上是您应用程序中的每个其他控制器将继承的类(尽管这不是强制性的).

我同意这样的态度,即不要将代码弄得太多并保持干净整洁,尽管在某些情况下ApplicationController会是放置代码的好地方.
例如:如果您正在使用多个区域设置文件并希望根据请求的URL设置区域设置,则可以在ApplicationController中执行此操作:

before_filter :set_locale

def set_locale
  I18n.locale = params[:locale] || I18n.default_locale
end

这将使您不必分别在每个控制器中设置区域设置.您只需执行一次,并在整个系统中设置了区域设置.

同样适用于着名的protect_from_forgery,它可以在新的rails应用程序的默认ApplicationController上找到.

另一个用例可能是抢救应用程序中某种类型的所有异常:

rescue_from ActiveRecord::RecordNotFound,:with => :record_not_found
private
def record_not_found
??render :text => "404 Not Found",:status => 404
end

通常,如果你有一个所有其他控制器肯定会使用的功能,ApplicationController可能是一个很好的地方.

(编辑:李大同)

【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容!

    推荐文章
      热点阅读