| Commit message (Collapse) | Author | Age | Files | Lines |
|
|
|
| |
for those who already migrated to Rails 5.0.0 beta
|
|
|
|
| |
to support Oracle database which only supports 30 byte identifier length
|
| |
|
|\
| |
| | |
Added references option to join tables
|
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| | |
Fixes issue #22960
When creating join tables with the command
rails g migration CreateJoinTableShowroomUser showroom:references user:references
The migration will use references to create the joins and output:
class CreateJoinTableShowroomUser < ActiveRecord::Migration
def change
create_join_table :showrooms, :users do |t|
t.references :showroom, index: true, foreign_key: true
t.references :user, index: true, foreign_key: true
end
end
end
This allows for proper refrences with indexes and foreign keys to be easily used when
adding join tables. Without `:refrences` the normal output is generated:
class CreateJoinTableShowroomUser < ActiveRecord::Migration[5.0]
def change
create_join_table :showrooms, :users do |t|
# t.index [:showroom_id, :user_id]
# t.index [:user_id, :showroom_id]
end
end
end
|
|/
|
|
|
|
|
|
|
|
|
|
|
| |
`initialize_schema_migrations_table` is called in every migrations.
https://github.com/rails/rails/blob/v5.0.0.beta1/activerecord/lib/active_record/migration.rb#L1080
https://github.com/rails/rails/blob/v5.0.0.beta1/activerecord/lib/active_record/schema.rb#L51
This means that extra `show variables` is called regardless of the
existence of `schema_migrations` table.
This change is to avoid extra `show variables` if `schema_migrations`
table exists.
|
|\
| |
| | |
Make to primary key instead of an unique index for internal tables
|
| | |
|
|\ \
| | |
| | |
| | |
| | | |
kamipo/remove_duplicated_composite_primary_key_tests
Remove duplicated composite primary key tests
|
| | | |
|
|/ / |
|
|\ \
| | |
| | | |
Use `t.index` in `create_table` instead of `add_index` in test schema
|
| | |
| | |
| | |
| | | |
For reduce bootstrap queries in tests.
|
|\ \ \
| | | |
| | | | |
Added test for backward compatibility of null constraints on timestamp columns
|
| |/ / |
|
| | | |
|
|\ \ \
| | | |
| | | | |
`OID::Money.precision` is unused since #15239
|
| | |/
| |/|
| | |
| | |
| | |
| | |
| | |
| | | |
p PostgreSQLAdapter::OID::Money.precision
# => 19
p PostgreSQLAdapter::OID::Money.new.precision
# => nil
|
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | | |
Rails has abstract Reflection classes (`MacroReflection`,
`AssociationReflection` etc.) and concrete Reflection classes
(e.g. `HasManyReflection`, `HasOneReflection` etc.).
In many case `calculate_constructable` returns `true`, so
change `calculate_constructable` to always return `true` and
override this method if necessary.
|
|\ \ \
| | | |
| | | | |
clarify the touch true option does not trigger after_save/update [ci skip]
|
| | | |
| | | |
| | | |
| | | |
| | | |
| | | |
| | | |
| | | | |
I've gotten tripped up more than a few times on this, thinking that
using `belongs_to` with `touch: true` would trigger my after_save or
after_update callbacks. The same text is in the documentation for the
touch method itself, but I think its helpful to repeat it again here.
It might save people some time.
|
|\ \ \ \
| | | | |
| | | | | |
make rake proxy work in rails engines
|
| | |_|/
| |/| | |
|
|\ \ \ \
| | | | |
| | | | |
| | | | |
| | | | | |
yui-knk/define_association_class_on_each_concrete_class
Each concrete classes have responsibility to return `association_class`
|
| |/ / / |
|
|/ / / |
|
|\ \ \
| |_|/
|/| | |
- Updated persistence documentation to make it clear that save and sa…
|
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | | |
won't update a record if validation fails.
- Also fixed `update` method's documention to be uniform about this statement.
Fixes #20821
[ci skip]
[Vipul A M & pseidemann ]
|
| | |
| | |
| | |
| | |
| | |
| | |
| | | |
This reverts commit ff835f90800a3e4122d64606cb328908c2e0e071, reversing
changes made to c4d85dfbc71043e2a746acd310e32f4f04db801a.
Reason: This broke the tests. We will add back after investigated.
|
|\ \ \
| | | |
| | | |
| | | |
| | | | |
yui-knk/warning_when_composite_primary_key_is_detected
Warn if `AR.primary_key` is called for a table who has composite prim…
|
| | | |
| | | |
| | | |
| | | |
| | | |
| | | |
| | | |
| | | | |
If `AR.primary_key` is called for a table who has composite primary key,
the method returns `nil`. This behavior sometimes generates invalid SQL.
The first time developers notice to invalid SQL is when they execute
SQL. This commit enables developers to know they are doing something
dangerous as soon as possible.
|
|\ \ \ \
| | | | |
| | | | | |
Refactor `column_exists?` in `SchemaStatements`
|
| |/ / / |
|
|\ \ \ \
| | | | |
| | | | | |
Fix `bigint?` for Enum columns in MySQL
|
| |/ / /
| | | |
| | | |
| | | | |
Follow up to #22896.
|
|\ \ \ \
| | | | |
| | | | | |
Make `SchemaMigration.drop_table` to one SQL
|
| |/ / /
| | | |
| | | |
| | | |
| | | | |
`SchemaMigration.drop_table` is only used in tests.
Simply we can use `drop_table if_exists: true`.
|
|\ \ \ \
| | | | |
| | | | | |
There is no need to define test if a connection does not support prim…
|
| |/ / / |
|
|\ \ \ \
| | | | |
| | | | |
| | | | |
| | | | | |
kamipo/remove_unused_lost_connection_error_messages
Remove unused `LOST_CONNECTION_ERROR_MESSAGES`
|
| |/ / /
| | | |
| | | |
| | | |
| | | | |
`LOST_CONNECTION_ERROR_MESSAGES` was added by f384582.
But currently unused from anywhere.
|
|\ \ \ \
| | | | |
| | | | | |
Explicitly define `columns` method as an interface
|
| |/ / /
| | | |
| | | |
| | | |
| | | |
| | | | |
`ActiveRecord::ConnectionAdapters::SchemaStatements#columns` is defined
here as an interface method here. So changes to raise `NotImplementedError`
same as `tables`, `views` ...etc.
|
|/ / / |
|
| | | |
|
| | |
| | |
| | | |
These methods are more expensive than the alternatives, and have strange semantics that are likely undesirable.
|
|\ \ \
| | | |
| | | | |
Remove `limit: 11` as backward-compatibility with Rails 2.0
|
| | | |
| | | |
| | | |
| | | |
| | | |
| | | |
| | | | |
Integer limit as a byte size was introduced from Rails 2.1.
`limit: 11` is not a byte size, but take care for backward-compatibility
with Rails 2.0 (a892af6). Integer limit out of range should be allowed
to raise by #6349. I think we should remove this backward-compatibility.
|
|\ \ \ \
| |_|/ /
|/| | | |
Clarify DatabaseStatements#execute docs re: memory usage.
|
| | | | |
|