7.3 注册失败
最后更新于:2022-04-01 22:29:19
# 7.3 注册失败
虽然上一节大概介绍了[图 7.12](#fig-signup-form) 中表单的 HTML 结构(参见[代码清单 7.15](#listing-signup-form-html)),但并没涉及什么细节,其实注册失败时才能更好地理解这个表单的作用。本节,我们会在注册表单中填写一些无效的数据,提交表单后,页面不会转向其他页面,而是返回“注册”页面,显示一些错误消息,如[图 7.14](#fig-signup-failure-mockup) 中的构思图所示。
![signup failure mockup bootstrap](https://docs.gechiui.com/gc-content/uploads/sites/kancloud/2016-05-11_5732bd14c7b0a.png)图 7.14:注册失败时显示的页面构思图
## 7.3.1 可正常使用的表单
回顾一下 [7.1.2 节](#a-users-resource)的内容,在 `routes.rb` 文件中设置 `resources :users` 之后([代码清单 7.3](#listing-users-resource)),Rails 应用就可以响应[表 7.1](#table-restful-users)中符合 REST 架构的 URL 了。其中,发送到 /users 地址上的 `POST` 请求由 `create` 动作处理。在 `create` 动作中,我们可以调用 `User.new` 方法,使用提交的数据创建一个新用户对象,尝试存入数据库,失败后再重新渲染“注册”页面,让访客重新填写注册信息。我们先来看一下生成的 `form` 元素:
```
';