| Commit message (Collapse) | Author | Age | Files | Lines |
... | |
|\ \
| | |
| | | |
fix CollectionAssociation's comments
|
| | |
| | |
| | |
| | | |
AssociationProxy to match changes for 3.1 removing Association proxy.
|
|\ \ \
| | | |
| | | | |
quoting: Check if id is a valid method before using it
|
| | | |
| | | |
| | | |
| | | |
| | | | |
Need to check if valud also respond_to :id before calling it, otherwise
things could explode.
|
| | | | |
|
|/ / / |
|
| | |
| | |
| | |
| | | |
[ci skip]
|
|\ \ \ |
|
| | | | |
|
|\ \ \ \
| | | | |
| | | | | |
modified regex for finding table_name from a multiline sql query in postgresql
|
| | | | |
| | | | |
| | | | |
| | | | |
| | | | |
| | | | |
| | | | |
| | | | |
| | | | |
| | | | |
| | | | |
| | | | | |
Previously, executing an insert SQL in PostgreSQL with a command like this:
insert into articles(
number)
values(
5152
)
would not work because the adapter was unable to extract the correct articles table name.
|
| | | | |
| | | | |
| | | | |
| | | | |
| | | | |
| | | | | |
Change most tests to make use of assert_raise returning the raised
exception rather than relying on a combination of flunk + rescue to
check for exception types/messages.
|
|\ \ \ \ \
| | | | | |
| | | | | |
| | | | | |
| | | | | |
| | | | | |
| | | | | | |
Fix PostgreSQL range tests on fresh DB
Correcting the name of the table we're creating is self-explanatory.
But we must also move away from the low IDs, because we're not touching the freshly-created primary key sequence; when the time comes, @new_range will be assigned an ID of 1.
|
| | | | | |
| | | | | |
| | | | | |
| | | | | | |
The changes in c4044b2 meant the tests would error on a fresh DB.
|
|\ \ \ \ \ \
| | | | | | |
| | | | | | | |
fix typos and grammar mistake [ci skip]
|
| | | | | | | |
|
|\ \ \ \ \ \ \
| | | | | | | |
| | | | | | | | |
set encoding UTF-8 for accepting multibyte character
|
| | | | | | | | |
|
|/ / / / / / / |
|
|\ \ \ \ \ \ \
| |_|/ / / / /
|/| | | | | | |
Change all `MiniTest` to `Minitest`
|
| | |/ / / /
| |/| | | |
| | | | | |
| | | | | |
| | | | | |
| | | | | | |
renamed to `Minitest`
Ref: https://github.com/seattlerb/minitest/blob/master/History.txt
|
| | | | | | |
|
| | | | | |
| | | | | |
| | | | | |
| | | | | |
| | | | | |
| | | | | |
| | | | | |
| | | | | | |
Assigning nil to a polymorphic belongs_to would nullify its _id field by
not its _type field.
Fixes failing test from c141dfc838a5dca9f197814410fa5d44c143129c.
Regression from 1678e959e973de32287b65c52ebc6cce87148951.
|
|\ \ \ \ \ \
| |/ / / / /
|/| | | | | |
#none documentation updated [ci skip]
|
| | | | | | |
|
| | | | | |
| | | | | |
| | | | | |
| | | | | | |
nullifying its _type column
|
| | | | | | |
|
|\ \ \ \ \ \
| | | | | | |
| | | | | | |
| | | | | | |
| | | | | | |
| | | | | | |
| | | | | | | |
Create a blacklist to disallow mutator methods to be delegated to Array
Conflicts:
guides/source/upgrading_ruby_on_rails.md
|
| | | | | | |
| | | | | | |
| | | | | | |
| | | | | | |
| | | | | | |
| | | | | | |
| | | | | | |
| | | | | | | |
This change was necessary because the whitelist wouldn't work.
It would be painful for users trying to update their applications.
This blacklist intent to prevent odd bugs and confusion in code that call mutator
methods directely on the `Relation`.
|
|\ \ \ \ \ \ \
| |/ / / / / /
|/| | | | | |
| | | | | | |
| | | | | | |
| | | | | | |
| | | | | | | |
Default I18n.enforce_available_locales to true
We will default this option to true from now on to ensure users properly handle their list of available locales whenever necessary. This option was added as a security measure and thus Rails will follow it defaulting to secure option.
Also improve the handling of I18n config options in its railtie, taking the new enforce_available_locales option into account, by setting it as the last one in the process. This ensures no other configuration will trigger a deprecation warning due to that setting.
|
| | | | | | | |
|
|\ \ \ \ \ \ \
| |/ / / / / /
|/| | | | | | |
test case for #limit added - picking latest value from limit
|
| | | | | | | |
|
| | | | | | |
| | | | | | |
| | | | | | |
| | | | | | | |
Blast from the past, MySQL 4 era, when the password hashing style changed.
|
|/ / / / / /
| | | | | |
| | | | | |
| | | | | |
| | | | | |
| | | | | |
| | | | | |
| | | | | |
| | | | | |
| | | | | |
| | | | | |
| | | | | |
| | | | | |
| | | | | |
| | | | | |
| | | | | |
| | | | | |
| | | | | |
| | | | | |
| | | | | |
| | | | | |
| | | | | |
| | | | | |
| | | | | |
| | | | | |
| | | | | |
| | | | | |
| | | | | |
| | | | | |
| | | | | |
| | | | | |
| | | | | |
| | | | | |
| | | | | |
| | | | | |
| | | | | |
| | | | | |
| | | | | |
| | | | | |
| | | | | |
| | | | | |
| | | | | |
| | | | | |
| | | | | |
| | | | | | |
Using the name of an association in `where` previously worked only
if the value was a single `ActiveRecrd::Base` object. e.g.
Post.where(author: Author.first)
Any other values, including `nil`, would cause invalid SQL to be
generated. This change supports arguments in the `where` query
conditions where the key is a `belongs_to` association name and the
value is `nil`, an `Array` of `ActiveRecord::Base` objects, or an
`ActiveRecord::Relation` object.
# Given the Post model
class Post < ActiveRecord::Base
belongs_to :author
end
# nil value finds records where the association is not set
Post.where(author: nil)
# SELECT "posts".* FROM "posts" WHERE "posts"."author_id" IS NULL
# Array values find records where the association foreign key
# matches the ids of the passed ActiveRecord models, resulting
# in the same query as Post.where(author_id: [1,2])
authors_array = [Author.find(1), Author.find(2)]
Post.where(author: authors_array)
# ActiveRecord::Relation values find records using the same
# query as Post.where(author_id: Author.where(last_name: "Emde"))
Post.where(author: Author.where(last_name: "Emde"))
Polymorphic `belongs_to` associations will continue to be handled
appropriately, with the polymorphic `association_type` field added
to the query to match the base class of the value. This feature
previously only worked when the value was a single `ActveRecord::Base`.
class Post < ActiveRecord::Base
belongs_to :author, polymorphic: true
end
Post.where(author: Author.where(last_name: "Emde"))
# Generates a query similar to:
Post.where(author_id: Author.where(last_name: "Emde"), author_type: "Author")
|
| | | | | | |
|
|\| | | | |
| | | | | |
| | | | | | |
Spelling and Grammar check [ci skip]
|
| | | | | | |
|
| | | | | | |
|
|\ \ \ \ \ \
| | | | | | |
| | | | | | |
| | | | | | |
| | | | | | |
| | | | | | |
| | | | | | | |
support creating temporary tables from queries
Conflicts:
activerecord/CHANGELOG.md
|
| | |/ / / /
| |/| | | |
| | | | | |
| | | | | |
| | | | | | |
also override drop_table in AbstractMySQLAdapter to properly drop
temporary tables without committing the transaction
|
| | | | | | |
|
|/ / / / /
| | | | |
| | | | |
| | | | |
| | | | |
| | | | | |
db:test:clone and db:test:prepare use
ActiveRecord::Base. configurations, so we need to load the rails
environment, otherwise the config wont be in place.
|
| | | | |
| | | | |
| | | | |
| | | | | |
* interpreted as a argument prefix
|
|\ \ \ \ \
| | | | | |
| | | | | | |
Fix mysql to support duplicated column names
|
| | | | | |
| | | | | |
| | | | | |
| | | | | |
| | | | | |
| | | | | |
| | | | | |
| | | | | |
| | | | | |
| | | | | | |
This will fix the [broken
test](https://github.com/rails/rails/commit/4a2650836680f51490e999c3c8441a2f9adff96e)
`test_with_limiting_with_custom_select`.
The query's result was built in a hash with column name as key, if the
result have a duplicated column name the last value was
overriding the first one.
|
| | | | | | |
|
|/ / / / / |
|
| | | | |
| | | | |
| | | | |
| | | | | |
won't last - aim to switch back to a blacklist for mutator methods.
|
|\ \ \ \ \
| | | | | |
| | | | | | |
Create a whitelist of methods to be delegated to Array.
|