| Commit message (Collapse) | Author | Age | Files | Lines |
|
|
|
|
|
|
|
|
| |
Only `primary_key` should be extracted by d47357e in #19030, but
`new_coclumn_definition` was also extracted because #17631 is merged
previously, then #19030 is auto merged without conflicts.
This commit is for move back `new_column_definition` into
`TableDefinition`.
|
|\
| |
| | |
Extract the short-hand column methods into `ColumnMethods`
|
| | |
|
| | |
|
| | |
|
|\ \
| | |
| | | |
Allow limit option for MySQL bigint primary key support.
|
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | | |
Example:
create_table :foos, id: :primary_key, limit: 8 do |t|
end
# or
create_table :foos, id: false do |t|
t.column :id, limit: 8
end
|
|/ /
| |
| |
| | |
I think this was supposed to be "roundTrip".
|
|/
|
|
| |
Deprecate `required` option in favor of `optional` for belongs_to.
|
|
|
|
|
| |
It's actually #validates_uniqueness_of that can generate a race condition
rather than #validates_presence_of.
|
| |
|
|
|
|
| |
These methods are nodoc so we should not document them.
|
|\
| |
| |
| | |
Isolate access to @associations_cache and @aggregations_cache to the Associations and Aggregations modules, respectively.
|
| |
| |
| |
| |
| |
| |
| |
| | |
Associations and Aggregations modules, respectively.
This includes replacing the `association_cache` accessor with a more
limited `association_cached?` accessor and making `clear_association_cache`
and `clear_aggregation_cache` private.
|
|\ \
| | |
| | | |
Move the `validate!` method to `ActiveModel::Validations`.
|
| | | |
|
|\ \ \
| |/ /
|/| |
| | | |
Simplify find_by_statement_cache interaction
|
| | |
| | |
| | |
| | | |
with a single accessor `cached_find_by_statement`.
|
|\ \ \
| | | |
| | | |
| | | | |
Always reset changed attributes in becomes
|
| | | |
| | | |
| | | |
| | | |
| | | |
| | | |
| | | |
| | | |
| | | |
| | | | |
When ```becomes``` changes @attributes it should also change
@changed_attributes. Otherwise we'll experience a kind of split head situation
where attributes are coming from ```self```, but changed_attributes is coming
from ```klass.new```. This affects the inheritance_colmn as it's changed by new
for example.
Fixes #16881
|
| | | |
| | | |
| | | |
| | | | |
It is also necessary to format a time column like a datetime column.
|
| | | | |
|
| | | | |
|
|\ \ \ \
| | | | |
| | | | | |
Handle array option in `type_to_sql`
|
| | | | |
| | | | |
| | | | |
| | | | |
| | | | | |
`[]` is a part of `sql_type`, so it is always necessary to respect to
array option when `type_to_sql` is called.
|
| | | | | |
|
| | | | | |
|
|\ \ \ \ \
| | | | | |
| | | | | |
| | | | | |
| | | | | | |
kamipo/extract_precision_from_datetime_and_time_columns
Extract precision from datetime and time columns
|
| |/ / / /
| | | | |
| | | | |
| | | | |
| | | | |
| | | | |
| | | | |
| | | | | |
The cause by which the test suite for the mysql adapter broke in 1502cae
(reverted 89ba5bb) is because the precision was not extracted.
The rounding problem in mysql adapter has not been fixed, but `mysql_56`
helper tested only mysql2 adapter, its behavior was not apparent.
|
| | | | |
| | | | |
| | | | |
| | | | |
| | | | | |
save is documented to return singletons so we should always return a
singleton.
|
| | | | |
| | | | |
| | | | |
| | | | | |
[ci skip]
|
|/ / / / |
|
| | | |
| | | |
| | | |
| | | |
| | | |
| | | | |
Fixes #18905. `#touch` now takes time as an option. Setting the option
saves the record with the updated_at/on attributes set to the current time
or the time specified. Updated tests and documentation accordingly.
|
| | | | |
|
| | | | |
|
| | | |
| | | |
| | | |
| | | |
| | | |
| | | |
| | | |
| | | |
| | | | |
This helper no longer makes sense as a separate method. Instead I'll
just have `deserialize` call `cast` by default. This led to a random
infinite loop in the `JSON` pg type, when it called `super` from
`deserialize`. Not really a great way to fix that other than not calling
super, or continuing to have the separate method, which makes the public
API differ from what we say it is.
|
| | | | |
|
| | | | |
|
| | | | |
|
| | | |
| | | |
| | | |
| | | |
| | | |
| | | |
| | | |
| | | |
| | | |
| | | | |
This reverts commit 1502caefd30b137fd1a0865be34c5bbf85ba64c1.
The test suite for the mysql adapter broke when this commit was used
with MySQL 5.6.
Conflicts:
activerecord/CHANGELOG.md
|
| | | | |
|
| | | |
| | | |
| | | |
| | | | |
favour of `begin_at` value.
|
|\ \ \ \
| | | | |
| | | | |
| | | | | |
Add `foreign_key_exists?` method.
|
| | | | | |
|
| | | | | |
|
| | | | | |
|
| | | | |
| | | | |
| | | | |
| | | | |
| | | | |
| | | | | |
We do this in the adapter classes specifically, so the types aren't
registered if we don't use that adapter. Constants under the PostgreSQL
namespace for example are never loaded if we're using mysql.
|
| | | | |
| | | | |
| | | | |
| | | | |
| | | | |
| | | | |
| | | | |
| | | | | |
As per previous discussions, we want to give users the ability to
reference their own types with symbols, instead of having to pass the
object manually. This adds the class that will be used to do so.
ActiveRecord::Type.register(:money, MyMoneyType)
|
|\ \ \ \ \ |
|
| | | | | |
| | | | | |
| | | | | |
| | | | | |
| | | | | |
| | | | | |
| | | | | |
| | | | | | |
A model cannot have two `:belongs_to` with the same exact name, so
we are better off avoiding this code in our examples, which might
mislead users in thinking it's admissible.
[ci skip]
|