`
helloqidi
  • 浏览: 12260 次
  • 性别: Icon_minigender_1
  • 来自: 北京
社区版块
存档分类
最新评论

beast学习笔记——3,application_controller

    博客分类:
  • ROR
阅读更多

beast学习笔记——3,application_controller

参考
http://2015.iteye.com/blog/604377(关于CSRF跨站请求伪造与protect_from_forgery
http://hlee.iteye.com/blog/422693(I18N英文介绍)
 
1,
(1)代码:
  include AuthenticatedSystem
  before_filter :set_language
  before_filter :login_required, :only => [:new, :edit, :create, :update, :destroy]
(2)表示:
调用插件AuthenticatedSystem,使用前置过滤器,其中login_required只对new, edit, create, update, destroy方法有效
 
2,
(1)代码
  helper :all
  helper_method :current_page
(2)表示
【1】helper :all,表示application_controller控制器将include所有的app/helpers目录下的helper。又因为application_controller是根控制器,所以,所有的视图view都可以用所有app/helpers目录下的helper
【2】helper_method方法,可以把controller中的方法定义为helper方法并可以在视图view中应用。又因为application_controller是根控制器,所以,所有的视图view都可以用current_page方法。
 
3,
(1)代码:
  # Uncomment the :secret if you're not using the cookie session store
  protect_from_forgery # :secret => 'e125a4be589f9d81263920581f6e4182'
(2)表示
如果没有使用rails2默认的cookie存储session的方式,就需要取消secret的注释,以保证不受CSRF跨站请求伪造
  protect_from_forgery与environment.rb中的config.action_controller.session配合使用
 
4,
(1)代码
  # Filter password parameter from logs
  
filter_parameter_logging :password
(2)表示
过滤那些不希望被日志文件记录的信息,比如password,从而避免通过日志来泄露敏感信息。
 
5,
(1)代码
  def set_language
    I18n.locale = :en || I18n.default_locale
  end
(2)表示使用en作为locale,或者使用默认的I18n设置作为locale
I18n是rails2.2以后引入的模块,用于实现框架的国际化。
比方说有这样一个 User model:
 
# == Schema Information
# Schema version: 20081028111521
#
# Table name: users
#
#  id                   :integer         not null, primary key
#  login                :string(255)     
#  email                :string(255)     
class User < ActiveRecord::Base
 #...
end
只要在该类中加入以下代码,就可以在 validation 的错误信息中显示中文字段名:
 
humanize_attributes :login => "用户名",
                   :email => "电邮"
现在 Rails 2.2 为我们带来了强大的 I18N 功能,没有必要再用上述方法来实现本地化了。
首先,在 environment.rb 中指定本地化语言:
config.i18n.default_locale = :cn
然后在 config/locales 目录下新建 cn.yml 文件,并进行以下设置:
cn:
   active record:
       models:
           user: "用户"
       attributes:
           user:
               login:  "用户名"
               email:  "电邮"
非常优雅方便。
 
Error messages 也可以用同样的方法进行设置。比方说,以前会用:
 
validates_presence_of     :login, :message => "不能为空"
现在只要在配置文件中加入相应信息即可:
 
active record:
       errors:
           messages:
               blank:      '不能为空'

 

分享到:
评论

相关推荐

    EA Beast_v2.9_ea_

    标题中的"EA Beast_v2.9_ea_"和描述中的"EA Beast_2.9"都提到了一个名为"EA Beast"的软件版本,这里的"EA"通常在金融交易,尤其是外汇交易(Forex)领域中代表“Expert Advisor”,即智能交易系统或自动交易机器人。...

    Beast Super Signal Grail_grail_forex_trading_

    《Beast Super Signal Grail:探索自动外汇交易的精粹》 在外汇交易的世界中,技术分析工具扮演着至关重要的角色。"Beast Super Signal Grail"是一个专为MetaTrader 4(MT4)平台设计的高级指标,旨在帮助交易者更...

    beAst音频小组内部教程_初级第一版

    ### beAst音频小组内部教程知识点汇总 #### 一、国语音轨的来源 国语配音音轨,简称国语音轨,是音轨的一种。音轨通常包括原声音轨、配音音轨(包括国语音轨)、字幕文件等。本文主要讲述了国语音轨的两大来源: ...

    Beast-Super-Signal_super_indicator_mt4indicator_mt4_beastsupersi

    【标题】"Beast-Super-Signal_super_indicator_mt4indicator_mt4_beastsupersi" 指的...最后,持续学习和实践是提升交易技巧的关键,而"BEAST SUPER SIGNAL"仅是交易者工具箱中的一种工具,不应被视为确保盈利的保证。

    beast加密扩展Windows DLL

    这个扩展是基于著名的“BEAST”(Block Cipher for Efficient and Secure Transports)算法,它是一种对称加密算法,旨在提供高效且安全的数据传输。在PHP环境中,这个DLL扩展使得开发者可以更方便地在Windows平台上...

    TB+Beast_deZenderphp.ini_dezender_

    3. **加密与安全**:由于 libeay32.dll 的存在,项目可能涉及加密操作,这在解码过程中可能很重要。 4. **PHP 执行环境**:php.exe 和 php5.dll 是运行 PHP 代码的基础,理解它们的工作原理有助于调试和优化程序。 5...

    uWebSockets-master.zip_beast websocket_uwebsocket_uwebsockets编译_

    标题中的“uWebSockets-master.zip”表明这是一个与uWebSockets相关的源代码压缩包,而“beast websocket”指的是Boost Beast库,它是一个用于处理HTTP和WebSocket协议的C++库。"uwebsocket"和"uwebsockets"可能是...

    windows下编译php­beast扩展

    在Windows环境下编译PHP-beast扩展是一个较为复杂的过程,涉及到选择合适的编译器、设置编译环境、准备编译文件、以及执行具体的编译步骤。本文将详细说明如何在Windows系统中编译PHP-beast扩展,同时会提供必要的...

    php-beast_liexusong.tar.gz

    《PHP源码加密模块——深入理解php-beast_liexusong.tar.gz》 在Web开发领域,PHP作为一种开源、跨平台的脚本语言,因其简洁、高效的特点被广泛应用。然而,随着互联网安全问题日益凸显,如何保护PHP源码不被轻易...

    BEAST计算分化时间

    ### BEAST计算分化时间知识...通过本教程的学习,初学者可以快速上手,并能够运用BEAST解决实际问题,如估算物种分化时间、进化速率等。掌握BEAST不仅有助于深入理解生物进化的机制,还能够在科学研究中发挥重要作用。

    BEAST v1.8.2.rar

    **BEAST v1.8.2 - 贝叶斯进化分析工具详解** **一、BEAST简介** BEAST(Bayesian Evolutionary Analysis Sampling Trees)是一款广泛应用在分子进化研究中的软件,版本为v1.8.2。它利用贝叶斯统计方法来估计物种...

    PHP源码加密工具(php-beast)php7版 v1.0

    php-beast是一个源码加密模块...使用模块提供的beast_encode_file&#40;$input_file, $output_file&#41;;来加密文件,$input_file为要加密的文件,$output_file为要输出的加密文件。5)把加密好的文件放到服务器上运行。

    基于Boost.Beast构建的易于使用的HTTP(S)客户端.zip

    3. **创建HTTP请求**: 创建一个`boost::beast::http::request`对象,填充请求方法(GET、POST等)、URL、头部信息等。 4. **发起请求**: 使用Boost.Beast的`write`函数将HTTP请求写入网络。对于HTTPS,需要先进行...

    PHP源码加密模块php-beast.zip

    3)重启服务器 4)加密PHP文件 使用模块提供的beast_encode_file&#40;$input_file, $output_file&#41;;来加密文件,$input_file为要加密的文件,$output_file为要输出的加密文件。 5)把加密好的文件放到...

    beast源代码下载

    "Beast源代码下载"指的是获取并安装名为Beast的开源软件项目,它与Rails开源论坛相关。Beast,全称可能为“BioBayes Evolutionary Analysis Toolkit”或类似的名称,是一个专门用于生物信息学领域,尤其是进化分析的...

    A Rough Guide to BEAST 1.4

    BEAST是一个基于贝叶斯MCMC(马尔可夫链蒙特卡洛)分析的跨平台分子序列分析程序,其设计目标是用于推断具有根的、基于严格或松弛分子钟模型的时间测定的系统发育树。BEAST不仅是一个重建系统发育树的方法,也是一个...

    Beast2.07 软件

    Beast2.07软件 Beast2.07软件 Beast2.07软件

    信息安全_数据安全_IPv666_–_Address_of_the_Beast.pdf

    信息安全_数据安全_IPv666_–_Address_of_the_Beast 安全评级 安全运营 威胁检测 安全风险 APT

    beast2, 基于抽样树的贝叶斯进化分析.zip

    beast2, 基于抽样树的贝叶斯进化分析 Beast 2 Beast 是一种基于分子序列MCMC的贝叶斯推理交叉平台程序。 它完全向根的方向推导,时间测量phylogenies使用严格或者松松的分子时钟模型推断出来。 它可以以作为一种重构...

Global site tag (gtag.js) - Google Analytics