mirror of
https://github.com/rails/rails.git
synced 2022-11-09 12:12:34 -05:00
Merge branch 'master' of github.com:rails/docrails
This commit is contained in:
commit
3a9b3ba082
5 changed files with 22 additions and 17 deletions
|
@ -13,9 +13,9 @@ module ActionController
|
|||
end
|
||||
|
||||
module ClassMethods
|
||||
# Allows you to consider additional controller-wide information when generating an etag.
|
||||
# Allows you to consider additional controller-wide information when generating an ETag.
|
||||
# For example, if you serve pages tailored depending on who's logged in at the moment, you
|
||||
# may want to add the current user id to be part of the etag to prevent authorized displaying
|
||||
# may want to add the current user id to be part of the ETag to prevent authorized displaying
|
||||
# of cached pages.
|
||||
#
|
||||
# class InvoicesController < ApplicationController
|
||||
|
@ -32,7 +32,7 @@ module ActionController
|
|||
end
|
||||
end
|
||||
|
||||
# Sets the etag, +last_modified+, or both on the response and renders a
|
||||
# Sets the +etag+, +last_modified+, or both on the response and renders a
|
||||
# <tt>304 Not Modified</tt> response if the request is already fresh.
|
||||
#
|
||||
# === Parameters:
|
||||
|
@ -54,11 +54,11 @@ module ActionController
|
|||
# fresh_when(etag: @article, last_modified: @article.created_at, public: true)
|
||||
# end
|
||||
#
|
||||
# This will render the show template if the request isn't sending a matching etag or
|
||||
# This will render the show template if the request isn't sending a matching ETag or
|
||||
# If-Modified-Since header and just a <tt>304 Not Modified</tt> response if there's a match.
|
||||
#
|
||||
# You can also just pass a record where +last_modified+ will be set by calling
|
||||
# +updated_at+ and the etag by passing the object itself.
|
||||
# +updated_at+ and the +etag+ by passing the object itself.
|
||||
#
|
||||
# def show
|
||||
# @article = Article.find(params[:id])
|
||||
|
@ -124,7 +124,7 @@ module ActionController
|
|||
# end
|
||||
#
|
||||
# You can also just pass a record where +last_modified+ will be set by calling
|
||||
# updated_at and the etag by passing the object itself.
|
||||
# +updated_at+ and the +etag+ by passing the object itself.
|
||||
#
|
||||
# def show
|
||||
# @article = Article.find(params[:id])
|
||||
|
|
|
@ -229,11 +229,11 @@ Please refer to the [Changelog](https://github.com/rails/rails/blob/4-0-stable/a
|
|||
The method `change_table` is also reversible, as long as its block doesn't call `remove`, `change` or `change_default`
|
||||
|
||||
* New method `reversible` makes it possible to specify code to be run when migrating up or down.
|
||||
See the [Guide on Migration](https://github.com/rails/rails/blob/master/guides/source/migrations.md#using-the-reversible-method)
|
||||
See the [Guide on Migration](https://github.com/rails/rails/blob/master/guides/source/active_record_migrations.md#using-reversible)
|
||||
|
||||
* New method `revert` will revert a whole migration or the given block.
|
||||
If migrating down, the given migration / block is run normally.
|
||||
See the [Guide on Migration](https://github.com/rails/rails/blob/master/guides/source/migrations.md#reverting-previous-migrations)
|
||||
See the [Guide on Migration](https://github.com/rails/rails/blob/master/guides/source/active_record_migrations.md#reverting-previous-migrations)
|
||||
|
||||
* Adds PostgreSQL array type support. Any datatype can be used to create an array column, with full migration and schema dumper support.
|
||||
|
||||
|
|
|
@ -298,8 +298,7 @@ Action Mailer 3.0 makes inline attachments, which involved a lot of hacking in p
|
|||
```html+erb
|
||||
<p>Hello there, this is our image</p>
|
||||
|
||||
<%= image_tag attachments['image.jpg'].url, alt: 'My Photo',
|
||||
class: 'photos' %>
|
||||
<%= image_tag attachments['image.jpg'].url, alt: 'My Photo', class: 'photos' %>
|
||||
```
|
||||
|
||||
#### Sending Email To Multiple Recipients
|
||||
|
|
|
@ -756,7 +756,7 @@ class Order < ActiveRecord::Base
|
|||
end
|
||||
```
|
||||
|
||||
Each instance of the order model will have these methods:
|
||||
Each instance of the `Order` model will have these methods:
|
||||
|
||||
```ruby
|
||||
customer
|
||||
|
@ -1342,16 +1342,16 @@ class Customer < ActiveRecord::Base
|
|||
end
|
||||
```
|
||||
|
||||
Each instance of the customer model will have these methods:
|
||||
Each instance of the `Customer` model will have these methods:
|
||||
|
||||
```ruby
|
||||
orders(force_reload = false)
|
||||
orders<<(object, ...)
|
||||
orders.delete(object, ...)
|
||||
orders.destroy(object, ...)
|
||||
orders=objects
|
||||
orders=(objects)
|
||||
order_ids
|
||||
order_ids=ids
|
||||
order_ids=(ids)
|
||||
orders.clear
|
||||
orders.empty?
|
||||
orders.size
|
||||
|
@ -1831,16 +1831,16 @@ class Part < ActiveRecord::Base
|
|||
end
|
||||
```
|
||||
|
||||
Each instance of the part model will have these methods:
|
||||
Each instance of the `Part` model will have these methods:
|
||||
|
||||
```ruby
|
||||
assemblies(force_reload = false)
|
||||
assemblies<<(object, ...)
|
||||
assemblies.delete(object, ...)
|
||||
assemblies.destroy(object, ...)
|
||||
assemblies=objects
|
||||
assemblies=(objects)
|
||||
assembly_ids
|
||||
assembly_ids=ids
|
||||
assembly_ids=(ids)
|
||||
assemblies.clear
|
||||
assemblies.empty?
|
||||
assemblies.size
|
||||
|
|
|
@ -506,6 +506,12 @@ As the name implies, this only generates option tags. To generate a working sele
|
|||
<%= collection_select(:person, :city_id, City.all, :id, :name) %>
|
||||
```
|
||||
|
||||
As with other helpers, if you were to use the collection_select helper on a form builder scoped to the @person object, the syntax would be:
|
||||
|
||||
```erb
|
||||
<%= f.collection_select(:city_id, City.all, :id, :name) %>
|
||||
```
|
||||
|
||||
To recap, `options_from_collection_for_select` is to `collection_select` what `options_for_select` is to `select`.
|
||||
|
||||
NOTE: Pairs passed to `options_for_select` should have the name first and the id second, however with `options_from_collection_for_select` the first argument is the value method and the second the text method.
|
||||
|
|
Loading…
Reference in a new issue