小编Mik*_*keH的帖子

为什么我在Zend MVC中的骆驼行为试图调用非camelcased方法名称?

动作名称的Zend标准是camelCase,但是如果我用驼峰套管创建一个动作,则请求失败,因为它试图在没有驼峰套管的情况下调用方法(动作)!

例:

我在模块"abc"中有一个名为"changeEmail"的动作.方法是"changeEmailAction"(由Zend Tool创建).如果我尝试访问/ abc/changeEmail,我会收到一条错误,上面写着"消息:操作","changeemail"不存在,并且没有被困在__call()中.

我能够使其工作的唯一方法是仅创建全部小写的动作名称.这会导致可读性差,并且与建议的命名约定相反.我错过了什么?

php zend-framework camelcasing

5
推荐指数
1
解决办法
4813
查看次数

模型的条件验证依赖于模型属性的值

我正在努力验证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)

ruby validation ruby-on-rails

2
推荐指数
1
解决办法
5226
查看次数