0

我有一个关于 PHP 的网站,我想将其转换为 Rails。我使用 md5 存储密码,使用 _form partial 进行注册和编辑用户数据。我要求登录名和密码字段,这非常适合注册,但是当用户尝试编辑他的数据时,再次需要填写登录名和密码字段(密码字段具有密码类型并留空以进行编辑)。我如何使用这些表格并解决在编辑模式下输入密码的问题?

4

1 回答 1

1

在您的模型中,仅在已填写密码字段时才添加验证,换句话说,在更新时,这些字段可以为空白。如果它们是空白的,那么它们将不会被验证或更改。

validates :password, 
          :confirmation => true, 
          :length => {:within => 8..20}, 
          :allow_blank => true, 
          :on => :update

您可能还想在表单上添加注释,只有在您更改密码或电子邮件地址时才需要密码字段。

您可以检查object.new_record?(正如 Yoshiji 先生提到的)以确定它是新记录(还没有 id)还是现有记录以更改您的表单提示。

于 2013-01-30T17:06:24.830 回答