| Commit message (Collapse) | Author | Age | Files | Lines |
|
|
|
|
| |
`select_one` create `ActiveRecord::Result` instance. It is better to use
`select_rows` instead of `select_one` for performance.
|
| |
|
|
|
|
|
| |
MySQL does not support partial index. And, the create index algorithm in
create table can not be specified.
|
|\
| |
| |
| | |
Dump indexes in `create_table` instead of `add_index`
|
| |
| |
| |
| |
| | |
If the adapter supports indexes in create table, generated SQL is
slightly more efficient.
|
|\ \
| | |
| | |
| | |
| | | |
yuki24/change-record-not-saved-and-not-destroyed-to-include-error-msg
AR::RecordNotSaved & RecordNotDestroyed from save!/destroy! should include an error message
|
| | |
| | |
| | |
| | |
| | |
| | |
| | | |
When `AR::Base.save!` or `AR::Base.destroy!` is called and an exception
is raised, the exception doesn't have any error message or has a weird
message like `#<FailedBulb:0x0000000907b4b8>`. Give a better message so
we can easily understand why it's failing to save/destroy.
|
|\ \ \
| | | |
| | | |
| | | | |
Correctly dump `:options` on `create_table` for MySQL
|
| |/ / |
|
|\ \ \
| | | |
| | | | |
Move PostgreSQL specific schema to postgresql_specific_schema.rb
|
| | |/
| |/| |
|
|\ \ \
| | | |
| | | | |
PostgreSQL: `:collation` support for string and text columns
|
| | | |
| | | |
| | | |
| | | |
| | | |
| | | |
| | | |
| | | |
| | | | |
Example:
create_table :foos do |t|
t.string :string_en, collation: 'en_US.UTF-8'
t.text :text_ja, collation: 'ja_JP.UTF-8'
end
|
| | | |
| | | |
| | | |
| | | |
| | | | |
Some databases like MySQL allow defining collation charset for specific
columns.
|
|\ \ \ \
| | | | |
| | | | | |
Change the `visit_AddColumn` visiblity for the internal API
|
| | |/ /
| |/| | |
|
| |/ /
|/| | |
|
|\ \ \
| | | |
| | | | |
Move comment about microseconds [ci skip]
|
| |/ /
| | |
| | |
| | | |
The microseconds handling was already moved to `Quoting#quoted_date`.
|
| | |
| | |
| | |
| | | |
Follow up #18914.
|
|/ /
| |
| |
| |
| | |
Its nodoc'ed for the other implementations, and doc'ed in the base
class, just like the other change_column* methods.
|
|\ \
| | |
| | | |
:nodoc: change_column_null in the implmenting adapters
|
| |/
| |
| |
| |
| |
| | |
`change_column_null` is doc'ed only in
ActiveRecord::ConnectionAdapters::SchemaStatements, so it would make
sense to :nodoc: it elsewhere.
|
|/ |
|
|\
| |
| | |
Improvement on Activerecord CHANGELOG.md [ci skip]
|
| | |
|
| | |
|
|\ \
| | |
| | | |
Nodoc validate_index_length! method
|
| | |
| | |
| | |
| | | |
- This method is used only by adapters to validate length of new index names.
|
|\ \ \
| |_|/
|/| | |
Added documentation for PostGreSQL database_statements [ci skip]
|
| |/
| |
| |
| |
| |
| | |
- Added documentation for index_name_exists? and rename_index.
- Also changed rails to \Rails in documentation of
allowed_index_name_length.
|
|\ \
| |/
|/| |
[ci skip] Correct grammar, add docs to ActiveRecord migration generator
|
| | |
|
| | |
|
|\ \
| | |
| | |
| | | |
Fix unscope for less than
|
| | |
| | |
| | |
| | |
| | |
| | | |
Code such as the following will be corrected.
Developer.where(id: -Float::INFINITY...2).unscope(where: :id)
|
|\ \ \
| | | |
| | | |
| | | | |
Raise ArgumentError when find_by receives no arguments
|
| | | |
| | | |
| | | |
| | | |
| | | |
| | | |
| | | |
| | | |
| | | | |
It fixes the strange error saying undefined method `take'.
```
RelationTest#test_find_by_without_arg_behaves_same_with_find_by({}):
NoMethodError: undefined method `take' for #<ActiveRecord::QueryMethods::WhereChain:0x007f9c55db1d68>
```
|
| | | | |
|
|\ \ \ \
| | | | |
| | | | |
| | | | | |
Add note about sti column value to becomes method [ci skip]
|
|/ / / / |
|
| | | |
| | | |
| | | |
| | | |
| | | |
| | | |
| | | |
| | | |
| | | |
| | | | |
Add a test-case to make sure that `create_table` with
a `foreign_key: true` and an adapter without foreign key support
does not blow up.
Motivated by #19794.
Originating from: https://github.com/rails/rails/commit/99a6f9e60ea55924b44f894a16f8de0162cf2702#commitcomment-10855210
|
| |_|/
|/| |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | | |
calebthompson/dont-rely-on-environment-task-for-schema-load"
This reverts commit 08ff4ccbbb3fb143a02e6752efb974a4bcfcd3bb, reversing
changes made to 6c9ed6dbc62450cdb87559afd15798305e069146.
Caused by #17920.
Closes #19545.
This patch introduced regressions because initializers were no longer
loaded. Specifically missing inflections result in broken restores of
the database.
|
| | |
| | |
| | |
| | | |
Also added reference for to_date, as it belongs historically.
|
| | |
| | |
| | |
| | | |
follow up to 107526e809ea2b6de8b2775ecf83e55d60833206
|
| | | |
|
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | | |
When running Active Record MySQL test, this warning is printed in the
console:
warning: instance variable errno not initialized
It turns out that this is a warning from `mysql` gem in MySQL::Error
object. However, since the `mysql` gem is no longer maintained, and
there won't be a newer version, it make sense for us to just silence
this warning to make the output cleaner.
|
|\ \ \
| | | |
| | | |
| | | | |
Fix missing index when using timestamps with index
|
| | | |
| | | |
| | | |
| | | |
| | | |
| | | |
| | | |
| | | |
| | | |
| | | |
| | | | |
The `index` option used with `timestamps` should be passed to both
`column` definitions for `created_at` and `updated_at` rather than just
the first.
This was happening because `Hash#delete` is used to extract the `index`
option passed to `timestamps`, thereby mutating the `options` hash
in-place. Now take a copy of the `options` before deleting so that the
original is not modified.
|
| | | | |
|