我在 config.rb 中配置了一个路由
resources :password
当参数不是电子邮件地址时,它工作正常。
当参数是电子邮件地址时,它会显示错误:
Started PUT "/password/example@gmail.com.json" for 127.0.0.1 at 2012-02-22 17:04:17 +0800
ActionController::RoutingError (No route matches [PUT] "/password/example@gmail.com.json"):
更新1
这是我的密码 Controller
def update
return_info = User.change_password(params[:id],params[:old],params[:newpw],params[:newpw2])
respond_to do |format|
format.json { render :json => {:info => t(return_info)} }
end
end
谢谢你。
最佳答案
如果您使用自定义字符串而不是 id 尝试
resources :password, :constraints => { :id => /.*/ }
关于ruby-on-rails - 如何在 rails PUT 请求中使用电子邮件地址作为参数?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/9391927/