1
0
Fork 0
mirror of https://github.com/rails/rails.git synced 2022-11-09 12:12:34 -05:00

Tried to make the response status code table more readable

By making it the last thing in it's section and adding pseudo row headers
This commit is contained in:
Iain Beeston 2013-04-14 18:29:47 +10:00
parent 3f52e5aa16
commit 5495bac354

View file

@ -283,8 +283,8 @@ Calls to the `render` method generally accept four options:
* `:content_type`
* `:layout`
* `:status`
* `:location`
* `:status`
##### The `:content_type` Option
@ -310,6 +310,14 @@ You can also tell Rails to render with no layout at all:
render layout: false
```
##### The `:location` Option
You can use the `:location` option to set the HTTP `Location` header:
```ruby
render xml: photo, location: photo_url(photo)
```
##### The `:status` Option
Rails will automatically generate a response with the correct HTTP status code (in most cases, this is `200 OK`). You can use the `:status` option to change this:
@ -319,70 +327,62 @@ render status: 500
render status: :forbidden
```
Rails understands both numeric status codes and the corresponding symbols shown below:
Rails understands both numeric status codes and the corresponding symbols shown below.
| HTTP Status Code | Symbol |
| ---------------- | -------------------------------- |
| 100 | :continue |
| 101 | :switching_protocols |
| 102 | :processing |
| 200 | :ok |
| 201 | :created |
| 202 | :accepted |
| 203 | :non_authoritative_information |
| 204 | :no_content |
| 205 | :reset_content |
| 206 | :partial_content |
| 207 | :multi_status |
| 226 | :im_used |
| 300 | :multiple_choices |
| 301 | :moved_permanently |
| 302 | :found |
| 303 | :see_other |
| 304 | :not_modified |
| 305 | :use_proxy |
| 306 | :reserved |
| 307 | :temporary_redirect |
| 400 | :bad_request |
| 401 | :unauthorized |
| 402 | :payment_required |
| 403 | :forbidden |
| 404 | :not_found |
| 405 | :method_not_allowed |
| 406 | :not_acceptable |
| 407 | :proxy_authentication_required |
| 408 | :request_timeout |
| 409 | :conflict |
| 410 | :gone |
| 411 | :length_required |
| 412 | :precondition_failed |
| 413 | :request_entity_too_large |
| 414 | :request_uri_too_long |
| 415 | :unsupported_media_type |
| 416 | :requested_range_not_satisfiable |
| 417 | :expectation_failed |
| 418 | :i'm_a_teapot |
| 422 | :unprocessable_entity |
| 423 | :locked |
| 424 | :failed_dependency |
| 426 | :upgrade_required |
| 500 | :internal_server_error |
| 501 | :not_implemented |
| 502 | :bad_gateway |
| 503 | :service_unavailable |
| 504 | :gateway_timeout |
| 505 | :http_version_not_supported |
| 506 | :variant_also_negotiates |
| 507 | :insufficient_storage |
| 510 | :not_extended |
##### The `:location` Option
You can use the `:location` option to set the HTTP `Location` header:
```ruby
render xml: photo, location: photo_url(photo)
```
| Response Class | HTTP Status Code | Symbol |
| ------------------- | ---------------- | -------------------------------- |
| **Informational** | 100 | :continue |
| | 101 | :switching_protocols |
| | 102 | :processing |
| **Success** | 200 | :ok |
| | 201 | :created |
| | 202 | :accepted |
| | 203 | :non_authoritative_information |
| | 204 | :no_content |
| | 205 | :reset_content |
| | 206 | :partial_content |
| | 207 | :multi_status |
| | 226 | :im_used |
| **Redirection** | 300 | :multiple_choices |
| | 301 | :moved_permanently |
| | 302 | :found |
| | 303 | :see_other |
| | 304 | :not_modified |
| | 305 | :use_proxy |
| | 306 | :reserved |
| | 307 | :temporary_redirect |
| **Client Error** | 400 | :bad_request |
| | 401 | :unauthorized |
| | 402 | :payment_required |
| | 403 | :forbidden |
| | 404 | :not_found |
| | 405 | :method_not_allowed |
| | 406 | :not_acceptable |
| | 407 | :proxy_authentication_required |
| | 408 | :request_timeout |
| | 409 | :conflict |
| | 410 | :gone |
| | 411 | :length_required |
| | 412 | :precondition_failed |
| | 413 | :request_entity_too_large |
| | 414 | :request_uri_too_long |
| | 415 | :unsupported_media_type |
| | 416 | :requested_range_not_satisfiable |
| | 417 | :expectation_failed |
| | 418 | :i'm_a_teapot |
| | 422 | :unprocessable_entity |
| | 423 | :locked |
| | 424 | :failed_dependency |
| | 426 | :upgrade_required |
| **Server Error** | 500 | :internal_server_error |
| | 501 | :not_implemented |
| | 502 | :bad_gateway |
| | 503 | :service_unavailable |
| | 504 | :gateway_timeout |
| | 505 | :http_version_not_supported |
| | 506 | :variant_also_negotiates |
| | 507 | :insufficient_storage |
| | 510 | :not_extended |
#### Finding Layouts