动作名称的Zend标准是camelCase,但是如果我用驼峰套管创建一个动作,则请求失败,因为它试图在没有驼峰套管的情况下调用方法(动作)!
例:
我在模块"abc"中有一个名为"changeEmail"的动作.方法是"changeEmailAction"(由Zend Tool创建).如果我尝试访问/ abc/changeEmail,我会收到一条错误,上面写着"消息:操作","changeemail"不存在,并且没有被困在__call()中.
我能够使其工作的唯一方法是仅创建全部小写的动作名称.这会导致可读性差,并且与建议的命名约定相反.我错过了什么?
我正在努力验证postal_code并使用不同的正则表达式,具体取决于country_code属性.我尝试了以下,但它不起作用:
class Venue < ActiveRecord::Base
...
attr_accessible :postal_code
attr_accessible :country_code
...
validates_presence_of :country_code
validates_length_of :country_code, :maximum => 2, :allow_nil => true
validates_inclusion_of :country_code, :in => %w( US CA AU GB )
validates_presence_of :postal_code
validates_length_of :postal_code, :maximum => 10, :allow_nil => true
validates_format_of :postal_code, :with => %r{^\d{4}$},
:message => "should be in the format 1111",
:allow_nil => true,
:if => :country_code == 'AU'
validates_format_of :postal_code, :with => %r{^\d{5}([\-]\d{4})?$},
:message => "should be in the format 11111 or 11111-1111",
:allow_nil => true, …Run Code Online (Sandbox Code Playgroud)