`
zhao_j_long
  • 浏览: 3634 次
  • 性别: Icon_minigender_1
  • 来自: 唐山.
社区版块
存档分类
最新评论

RecordActive中default_errors_messages的改变

阅读更多
正在看railsspace_building_a_social_networking_website_with_ruby_on_rails一书,Rails_Space的测试代码,在测试时发现用下列验证输入信息过长的错误。在Rails2.2.2中发生错误。
error_messages = ActiveRecord::Errors.default_error_messages
sprintf(error_messages[:too_long], length)
经查看代码,在rails-2.0前,可以把default_error_messages中%d替换成数字。
在Rails2.2.2中,default_error_messages定义发生了变化,不能把{{counter}}提换成数字。可以在script/console 中,通过输入ActiveRecord::Errors.default_error_messages查看详细内容。
2.0以前,在validations.rb中
   @@default_error_messages = {
      :inclusion => "is not included in the list",
      :exclusion => "is reserved",
      :invalid => "is invalid",
      :confirmation => "doesn't match confirmation",
      :accepted  => "must be accepted",
      :empty => "can't be empty",
      :blank => "can't be blank",
      :too_long => "is too long (maximum is %d characters)",
      :too_short => "is too short (minimum is %d characters)",
      :wrong_length => "is the wrong length (should be %d characters)",
      :taken => "has already been taken",
      :not_a_number => "is not a number",
      :greater_than => "must be greater than %d",
      :greater_than_or_equal_to => "must be greater than or equal to %d",
      :equal_to => "must be equal to %d",
      :less_than => "must be less than %d",
      :less_than_or_equal_to => "must be less than or equal to %d",
     dd => "must be odd",
      :even => "must be even"
    }
2.2.2,在validations.rb中
   def default_error_messages 
    ActiveSupport::Deprecation.warn("ActiveRecord::Errors.default_error_messages
      has been deprecated. Please use
      I18n.translate('activerecord.errors.messages').")
      I18n.translate 'activerecord.errors.messages'
    end
分享到:
评论
1 楼 lyslim 2009-04-17  
zhao_j_long 写道

在Rails2.2.2中,default_error_messages定义发生了变化,不能把{{counter}}提换成数字。


google后看到解决方法,顺手贴下,因为自己之前也有疑问,而楼主并没有说解决方法..

correct_error_message = I18n.translate
"activerecord.errors.messages.too_long", :count=>max_length

因为rails2.2.2之后,error message要集中处理(多语言的问题),所以通过I18n.translate这个method来代入参数就好了,不需要自己手动修改error message.

相关推荐

    cfg_errors.gocfg_errors.gocfg_errors.go

    cfg_errors.gocfg_errors.gocfg_errors.gocfg_errors.gocfg_errors.gocfg_errors.gocfg_errors.gocfg_errors.gocfg_errors.gocfg_errors.go

    oracle8i_errors.chm

    oracle8i_errors.chm

    MySQL性能参数详解之Max_connect_errors 使用介绍

    max_connect_errors是一个MySQL中与安全有关的计数器值,它负责阻止过多尝试失败的客户端以防止暴力破解密码的情况。max_connect_errors的值与性能并无太大关系。 默认情况下,my.cnf文件中可能没有此行,如果需要...

    Python库 | pretty_errors-1.0.7-py3-none-any.whl

    python库。 资源全名:pretty_errors-1.0.7-py3-none-any.whl

    PyPI 官网下载 | pretty_errors-1.0.3.tar.gz

    在"pretty_errors-1.0.3"这个版本中,可能包含了针对前一版本的改进和修复,比如性能优化、新特性添加或者已知问题的修复。具体改动通常会在其发行说明或GitHub仓库的Changelog中详细记录,但这些信息并未直接提供。...

    linux 网络诊断常用命令.pdf

     rx_errors: 0  tx_errors: 0  tx_dropped: 0  multicast: 0  collisions: 0  rx_length_errors: 0  rx_over_errors: 0  rx_crc_errors: 0  rx_frame_errors: 0  rx_no_buffer_count: 0  rx_missed_...

    11-6_cal_errors.py

    11-6_cal_errors.py

    SPAWC2017_CS_robust_sync_errors-master_northbit_mimo_

    标题“SPAWC2017_CS_robust_sync_errors-master_northbit_mimo_”表明这是一份关于SPAWC(Space-Time Processing for Wireless Communications)2017年会议中的一个研究项目,重点关注在MIMO(Multiple-Input ...

    Python库 | gtki_module_orup_errors-1.23-py3-none-any.whl

    本文将深入探讨“gtki_module_orup_errors”这一特定库的细节,以及它在Python中的应用。 “gtki_module_orup_errors-1.23-py3-none-any.whl”是一个Python库的封装文件,版本号为1.23,适用于Python 3解释器。.whl...

    ADS_Errors_and_Warnings

    ### ADS_Errors_and_Warnings:深入解析MTK嵌入式开发中的常见问题 #### 引言 《ADS_Errors_and_Warnings》文档是针对ARM Developer Suite (ADS) 1.2版本及其RealView Compilation Tools (RVCT) 1.2版本的错误与...

    best_errors:Better_errors 和 binding_of_caller

    是否厌倦了为每个Rails 项目在 Gemfile 中同时要求better_errors和binding_of_caller而使您的手指陷入僵局? 那么这颗宝石是给你的!安装把它放在你的 Gemfile 中并打包: gem 'best_errors'什么是 ? 它是 Rails ...

    Oracle_Errors(oracle错误信息)解释

    Oracle数据库是全球广泛使用的大型关系型数据库管理系统,其在运行过程中可能会遇到各种错误,这些错误通常以特定的错误编号和消息形式出现。本文件包包含了关于"Oracle_Errors(oracle错误信息)解释"的相关资源,...

    Oracle_Errors描述

    以上只是Oracle数据库中的一些常见错误,实际的"Oracle_Errors.chm"文件应该包含更详尽的错误信息和解决方案。对于数据库管理员和开发者来说,理解和处理这些错误是提升系统稳定性及解决问题的关键。通过学习和理解...

    XID_Errors.pdf

    Linux下XID错误消息位于/var/log/messages位置。通过运行“grep 'NVRM:Xid'”命令来查找所有XID消息。接下来,会以一个示例来说明XID字符串的外观。以一个具体的例子,系统会输出类似“NVRM: GPU at 0000:03:00: GPU...

    Oracle_Errors

    总之,"Oracle_Errors"是一个宝贵的资源,它能帮助你快速定位和解决Oracle数据库中遇到的各种问题,提升你在Oracle领域的专业技能。无论是初学者还是经验丰富的DBA,都应该将其作为日常学习和工作中的重要参考资料。

    Python库 | musamusa_errors-0.9.4.tar.gz

    资源分类:Python库 所属语言:Python 资源全名:musamusa_errors-0.9.4.tar.gz 资源来源:官方 安装方法:https://lanzao.blog.csdn.net/article/details/101784059

    binance_api_中文翻译版_rest-api_errors

    CyberArticle 5导出 exe电子书.............................. Web Socket 行情接口(2018-11-13) Websocket账户接口 (2018-11-13) REST行情与交易接口 (2018-11-13) REST接口(账户与资金) (2018-07-18)

Global site tag (gtag.js) - Google Analytics