1
  validates :password, :presence => { :on => :create },
            :length => { :within => 4..40 }

  validates :password, :presence => { :on => :create },
            :length => { :within => 4..40, :on => :save }

:on => :saveバリデーションのデフォルトは、 :create と :update? の両方を意味するものだと思いました。しかし、最初の仕様を 2 番目の仕様に置き換えると、失敗し始めexpected valid? to return false, got trueます。

何が起こっていますか?

4

1 に答える 1

0

あなたが言うように、:on => :saveはデフォルトであり、を意味するon both update and createので、それは必要ありません。おそらくあなたはバグを見つけましたが、私があなたの質問を読んだ場合、私たちはあなたのスペックを見ることができないので、あなたのスペックは:on =>:saveなしで合格しています。それを残して続行します。

于 2011-08-27T00:59:22.117 に答える