| Commit message (Collapse) | Author | Age | Files | Lines |
... | |
| |
| |
| |
| |
| |
| |
| |
| |
| | |
In some circumstances engine was Arel::Table.engine which for separate
reasons was an ActiveRecord::Model::DeprecationProxy, which caused a
deprecation warning.
In any case, we want the actual model class here, since we want to use
it to infer information about associations.
|
| | |
|
| |
| |
| |
| |
| | |
Previously the reflection would be looked up on the wrong class. However
the test passed because the examples referred back to themselves.
|
|\ \
| | |
| | | |
Convert model name to foreign key in queries
|
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | | |
Allows you to specify the model association key in a belongs_to
relationship instead of the foreign key.
The following queries are now equivalent:
Post.where(:author_id => Author.first)
Post.where(:author => Author.first)
PriceEstimate.where(:estimate_of_type => 'Treasure', :estimate_of_id => treasure)
PriceEstimate.where(:estimate_of => treasure)
|
| | | |
|
|\ \ \
| | | |
| | | |
| | | | |
Add docs to inheritance_column method, explaining how to override it
to be able to use the "type" column without STI [ci skip]
|
| | | |
| | | |
| | | |
| | | |
| | | | |
single-table inheritance by overriding it in your ActiveRecord
Model.
|
|\ \ \ \
| | | | |
| | | | | |
Fixed support for DATABASE_URL for rake db tasks
|
| | | | |
| | | | |
| | | | |
| | | | |
| | | | |
| | | | |
| | | | |
| | | | |
| | | | |
| | | | |
| | | | |
| | | | | |
- added tests to confirm establish_connection uses DATABASE_URL and
Rails.env correctly even when no arguments are passed in.
- updated rake db tasks to support DATABASE_URL, and added tests to
confirm correct behavior for these rake tasks. (Removed
establish_connection call from some tasks since in those cases
the :environment task already made sure the function would be called)
- updated Resolver so that when it resolves the database url, it
removes hash values with empty strings from the config spec (e.g.
to support connection to postgresql when no username is specified).
|
|/ / / /
| | | |
| | | |
| | | |
| | | | |
1. Unused variable
2. possibly useless use of a variable in
void context
|
|\ \ \ \
| |_|/ /
|/| | | |
ConnectionPool, unify exceptions, ConnectionTimeoutError
|
| | | |
| | | |
| | | |
| | | |
| | | |
| | | |
| | | |
| | | |
| | | |
| | | |
| | | |
| | | |
| | | |
| | | |
| | | |
| | | |
| | | |
| | | |
| | | |
| | | |
| | | |
| | | |
| | | |
| | | |
| | | |
| | | |
| | | |
| | | |
| | | |
| | | |
| | | |
| | | |
| | | | |
As a result of different commits, ConnectionPool had become
of two minds about exceptions, sometimes using PoolFullError
and sometimes using ConnectionTimeoutError. In fact, it was
using ConnectionTimeoutError internally, but then recueing
and re-raising as a PoolFullError.
There's no reason for this bifurcation, standardize on
ConnectionTimeoutError, which is the rails2 name and still
accurately describes semantics at this point.
History
In Rails2, ConnectionPool raises a ConnectionTimeoutError if
it can't get a connection within timeout.
Originally in master/rails3, @tenderlove had planned on removing
wait/blocking in connectionpool entirely, at that point he changed
exception to PoolFullError.
But then later wait/blocking came back, but exception remained
PoolFullError.
Then in 02b233556377 pmahoney introduced fair waiting logic, and
brought back ConnectionTimeoutError, introducing the weird bifurcation.
ConnectionTimeoutError accurately describes semantics as of this
point, and is backwards compat with rails2, there's no reason
for PoolFullError to be introduced, and no reason for two
different exception types to be used internally, no reason
to rescue one and re-raise as another. Unify!
|
| | | |
| | | |
| | | |
| | | | |
charset but encoding.
|
|/ / / |
|
|\ \ \
| | | |
| | | |
| | | |
| | | | |
skorfmann/improve-has-many-through-exception-message
Improve exception message for HasManyThroughAssociationPolymorphicSourceError
|
| | | |
| | | |
| | | |
| | | |
| | | | |
Exception message was misleading, as it is possible to have a
polymorphic 'has_many :through' join model.
|
| | | | |
|
| | | | |
|
|\ \ \ \
| | | | |
| | | | |
| | | | |
| | | | | |
Conflicts:
activerecord/lib/active_record/connection_adapters/postgresql_adapter.rb
|
| | | | | |
|
| | | | | |
|
| | | | |
| | | | |
| | | | |
| | | | | |
<pre> block.
|
|\ \ \ \ \
| | | | | |
| | | | | | |
removed warning: shadowing outer local variable
|
| | |/ / /
| |/| | | |
|
| | | | |
| | | | |
| | | | |
| | | | |
| | | | |
| | | | |
| | | | |
| | | | |
| | | | |
| | | | |
| | | | |
| | | | |
| | | | | |
When calling a query method on an attribute that was not selected by
an ActiveRecord query, an ActiveModel::MissingAttributeError is not
raised. Instead, a nil value is returned, which will return false once
cast to boolean.
This is undesirable, as we should not give the impression that we know
the attribute's boolean value when we haven't loaded the attribute's
(possibly) non-boolean value from the database.
This issue is present on versions going back as far as 2.3, at least.
|
| | | | | |
|
|/ / / / |
|
|\ \ \ \
| | | | |
| | | | | |
postgres, map scaled intervals to string datatype
|
| | | | | |
|
| | | | |
| | | | |
| | | | |
| | | | |
| | | | |
| | | | | |
* There is no need to delete the primary key from cloned attributes,
since it sets the same pk to nil afterwards.
* Check for empty? instead of any? to run initialize callbacks.
|
| | | | |
| | | | |
| | | | |
| | | | | |
transaction.
|
|\ \ \ \ \
| | | | | |
| | | | | | |
Fix eagerly loading associations without primary keys
|
| | | | | | |
|
| |/ / / /
|/| | | |
| | | | |
| | | | | |
move validation to AR
|
| | | | |
| | | | |
| | | | |
| | | | |
| | | | |
| | | | |
| | | | |
| | | | |
| | | | | |
This implements the support to encode/decode JSON
data to/from database and creating columns of type
JSON using a native type [1] supported by PostgreSQL
from version 9.2.
[1] http://www.postgresql.org/docs/9.2/static/datatype-json.html
|
|\ \ \ \ \
| | | | | |
| | | | | | |
correct handling of changes in AR::Store, combine multiple store_accessors
|
| | | | | |
| | | | | |
| | | | | |
| | | | | | |
store_accessor
|
|\ \ \ \ \ \
| | | | | | |
| | | | | | | |
Fix pluck when columns/tables are reserved words.
|
| | | | | | | |
|
|\ \ \ \ \ \ \
| |/ / / / / /
|/| | | | | |
| | | | | | |
| | | | | | | |
seamusabshere/use-mysql-binary-for-rake-db-structure-load
Use the 'mysql' binary for 'rake db:structure:load'
|
| |/ / / / /
| | | | | |
| | | | | |
| | | | | | |
The previous implementation had the strange requirement that db/structure.sql contain only CREATE TABLE sql statements, one per table, separated by double newlines. SQLite3 and PostgreSQL database tasks, on the other hand, simply spawn 'sqlite3' and 'psql' binaries to load the file directly. The new implementation follows this and attempts to respect all current MySQL configuration settings.
|
|\ \ \ \ \ \
| | | | | | |
| | | | | | | |
Fix for time type columns with invalid time value
|
| |/ / / / /
| | | | | |
| | | | | |
| | | | | |
| | | | | |
| | | | | | |
The string_to_dummy_time method was blindly parsing the dummy time string
with Date._parse which returns a hash for the date part regardless
of whether the time part is an invalid time string.
|
|\ \ \ \ \ \
| |/ / / / /
|/| | | | | |
Modularize postgresql adapter
|
| | |/ / /
| |/| | | |
|
|/ / / /
| | | |
| | | |
| | | |
| | | |
| | | |
| | | |
| | | |
| | | |
| | | |
| | | |
| | | |
| | | |
| | | |
| | | | |
I had to create a new table because I needed an STI table,
which does not have both a "type" and a "custom_type"
the test fails with:
1) Error:
test_alt_becomes_works_with_sti(InheritanceTest):
NoMethodError: undefined method `type=' for #<Cabbage id: 1, name: "my cucumber", custom_type: "Cucumber">
/Users/username/Projects/rails/activemodel/lib/active_model/attribute_methods.rb:432:in `method_missing'
/Users/username/Projects/rails/activerecord/lib/active_record/attribute_methods.rb:100:in `method_missing'
/Users/username/Projects/rails/activerecord/lib/active_record/persistence.rb:165:in `becomes'
test/cases/inheritance_test.rb:134:in `test_becomes_works_with_sti'
test/cases/inheritance_test.rb:140:in `test_alt_becomes_works_with_sti'
|
| | | |
| | | |
| | | |
| | | |
| | | |
| | | | |
This is purely a performance optimisation.
See https://gist.github.com/3552829
|
| | | |
| | | |
| | | |
| | | |
| | | |
| | | |
| | | |
| | | | |
This is a performance/GC optimisation.
In theory, this could be optimised by the implementation (last time I
checked, this would have no effect on JRuby). But in practise, this make
attribute access faster.
|
| | | | |
|