Commit Graph

1519 Commits

Author SHA1 Message Date
Joshua Peek
4e50a35fa2 Break up DependencyModule's dual function of providing a "depend_on" DSL and "included" block DSL into separate modules. But, unify both approaches under AS::Concern. 2009-05-28 11:35:36 -05:00
Chad Woolley
0f1b283e03 Fix eager association test related to different ordering on sqlite
[#2686 state:committed]

Signed-off-by: Jeremy Kemper <jeremy@bitsweat.net>
2009-05-21 10:01:47 -07:00
Emilio Tagua
20deb677a2 Add missing models and fixtures [#2673 state:resolved]
Signed-off-by: Pratik Naik <pratiknaik@gmail.com>
2009-05-19 12:11:46 +02:00
Jeremy Kemper
3e2f0800e3 Merge branch 'master' of git@github.com:rails/rails 2009-05-18 13:43:44 -07:00
Ken Collins
87adecfef5 Reimplement Fixtures.identify so that it consistently generates identities across ruby versions.
[#2633 state:committed]

Signed-off-by: Jeremy Kemper <jeremy@bitsweat.net>
2009-05-18 13:40:45 -07:00
Luca Guidi
cef76c8af4 Ensure HasManyThroughAssociation#destroy delete orphan records [#2251 state:resolved]
Signed-off-by: Pratik Naik <pratiknaik@gmail.com>
2009-05-18 22:30:43 +02:00
Pratik Naik
c5e109bbe7 Make sure default_scope#create checks for options[:conditions] [#2181 state:resolved] [James Le Cuirot] 2009-05-18 21:27:42 +02:00
Emilio Tagua
28f5cfe066 Add missing model and fixtures to finder_test [#2671 state:resolved]
Signed-off-by: Pratik Naik <pratiknaik@gmail.com>
2009-05-18 15:58:25 +02:00
Benjamin Floering
27de7f150b Fixed limited eager loading associations with numbers in the name [#2668 state:resolved]
Signed-off-by: Pratik Naik <pratiknaik@gmail.com>
2009-05-18 13:56:17 +02:00
Mislav Marohnić
b33c0d9832 replace the aaa_create_tables_test hack with loading test database schema in the test helper [#2663 state:resolved]
Signed-off-by: Joshua Peek <josh@joshpeek.com>
2009-05-17 13:51:35 -05:00
Chris Kampmeier
4e8c36a741 Implement #many? for NamedScope and AssociationCollection using #size [#1500 state:resolved]
Signed-off-by: Pratik Naik <pratiknaik@gmail.com>
2009-05-17 18:56:06 +02:00
Daniel Guettler
25724eede9 has_one :through should not create a new association when assigned nil [#698 state:resolved]
Signed-off-by: Pratik Naik <pratiknaik@gmail.com>
2009-05-17 14:48:20 +02:00
Peter Marklund
afcbdfc15f Changed ActiveRecord::Base#exists? to invoke find_initial so that it is compatible with, and doesn't lose, :include scopes (references to eager loaded tables)
Signed-off-by: Michael Koziarski <michael@koziarski.com>
[#2543 state:committed]
2009-05-14 20:42:00 +12:00
Jeremy Kemper
e8550ee032 Cherry-pick core extensions 2009-05-13 12:00:15 -07:00
Jeremy Kemper
a7ccc7c79f Remove support for deprecated validation message interpolation format 2009-05-13 11:43:03 -07:00
Bryan Helmkamp
a2875bec9a Use DependencyModule for included hooks in ActiveRecord 2009-05-11 22:23:47 -04:00
Jeremy Kemper
ddbeb15a5e Revert "Fixed bug with polymorphic has_one :as pointing to an STI record"
[#2594 state:open]

This reverts commit 99c103be11.
2009-05-11 12:20:54 -07:00
Mike Breen
9010ed2755 Allow you to pass :all_blank to :reject_if option to automatically create a Proc that will reject any record with blank attributes. 2009-05-10 15:02:00 +12:00
Anthony Crumley
026b78f907 Fixed eager load error on find with include => [:table_name] and hash conditions like {:table_name => {:column => 'value'}}
Signed-off-by: Michael Koziarski <michael@koziarski.com>
2009-05-10 13:36:51 +12:00
Frederick Cheung
235775de29 honour :inverse_of for joins based include
Signed-off-by: Michael Koziarski <michael@koziarski.com>
2009-05-10 12:50:03 +12:00
Frederick Cheung
ef6f22ab2a honour inverse_of when preloading associations
Signed-off-by: Michael Koziarski <michael@koziarski.com>
2009-05-10 12:50:02 +12:00
Murray Steele
ccea98389a Providing support for :inverse_of as an option to associations.
You can now add an :inverse_of option to has_one, has_many and belongs_to associations.  This is best described with an example:

class Man < ActiveRecord::Base
  has_one :face, :inverse_of => :man
end

class Face < ActiveRecord::Base
  belongs_to :man, :inverse_of => :face
end

m = Man.first
f = m.face

Without :inverse_of m and f.man would be different instances of the same object (f.man being pulled from the database again).  With these new :inverse_of options m and f.man are the same in memory instance.

Currently :inverse_of supports has_one and has_many (but not the :through variants) associations.  It also supplies inverse support for belongs_to associations where the inverse is a has_one and it's not a polymorphic.

Signed-off-by: Murray Steele <muz@h-lame.com>
Signed-off-by: Jeremy Kemper <jeremy@bitsweat.net>
2009-05-04 15:27:39 -07:00
Ruy Asan
99c103be11 Fixed bug with polymorphic has_one :as pointing to an STI record
[#2594 state:committed]

Signed-off-by: Jeremy Kemper <jeremy@bitsweat.net>
2009-05-01 14:47:56 -07:00
Alexander Podgorbunsky
db0bfe4ede Default scope :order should be overridden by named scopes.
[#2346 state:committed]

Signed-off-by: Jeremy Kemper <jeremy@bitsweat.net>
2009-05-01 14:44:24 -07:00
steve
60a6284a46 Tests should use ActiveRecord::Base.connection.rollback_db_transaction to rollback a transaction
Signed-off-by: Pratik Naik <pratiknaik@gmail.com>
2009-05-01 16:00:09 +01:00
steve
5501b99a19 Ensure ActiveRecord::Base.connection_pool.with_connection creates a new connection only when needed [#1752 state:resolved]
Signed-off-by: Pratik Naik <pratiknaik@gmail.com>
2009-05-01 14:58:10 +01:00
Emilio Tagua
db892ea775 Fix duplicated test name
[#2581 state:committed]

Signed-off-by: Jeremy Kemper <jeremy@bitsweat.net>
2009-04-29 15:46:43 -07:00
Eloy Duran
da3c21ead5 Ensure the parent record is always saved when the child is invalid. [#2249 state:resolved]
Signed-off-by: Pratik Naik <pratiknaik@gmail.com>
2009-04-27 19:25:27 +01:00
Emilio Tagua
a841cd2503 Fix models load order to be able to run unit tests.
[#2550 state:committed]

Signed-off-by: Jeremy Kemper <jeremy@bitsweat.net>
2009-04-23 16:02:11 -07:00
rick
3c4c6bd0df * Add pluggable JSON backends with support for the JSON gem. [rick]
Example: ActiveSupport::JSON.backend = "JSONGem"

  All internal Rails JSON encoding is now handled by ActiveSupport::JSON.encode().  Use of #to_json is not recommended, as it may clash with other libraries that overwrite it.  However, you can recover Rails specific functionality
  if you really want to use #to_json.

    gem 'json'
    ActiveSupport::JSON.backend = "JSONGem"

    class ActiveRecord::Base
      alias to_json rails_to_json
    end
2009-04-23 00:08:40 -07:00
Alex Pooley
504d16ccdf Add microsecond support for sqlite adapter [#1982 state:resolved]
Signed-off-by: Pratik Naik <pratiknaik@gmail.com>
2009-04-21 18:05:07 +01:00
Pratik Naik
2e6d1bf43e Change table to prevent copying indexes on sqlite2 2009-04-21 13:28:49 +01:00
Pratik Naik
2381f6f3dc Specify :group with the table name for it to work on sqlite3 2009-04-21 13:11:56 +01:00
Pratik Naik
6513dde490 Fix tests for sqlite3 3.6.xx 2009-04-21 13:06:26 +01:00
Max Lapshin
f3ac4f387d Fixed dumping from postgresql columns in index in wrong order. [#2515 state:resolved]
Signed-off-by: Tarmo Tänav <tarmo@itech.ee>
2009-04-21 11:44:13 +01:00
Scott Woods
64b33b6cf9 Quote table names when casting to regclass so that capitalized tables are supported. [#2418 state:resolved]
Signed-off-by: Tarmo Tänav <tarmo@itech.ee>
2009-04-21 11:43:38 +01:00
Max Lapshin
cdcd638c2f Fixed wrong quoting of index names in postgres [#2402 state:resolved]
Signed-off-by: Tarmo Tänav <tarmo@itech.ee>
2009-04-21 11:42:40 +01:00
Pratik Naik
de0ea38663 Ensure :dependent => :delete_all works for association with hash conditions 2009-04-20 18:12:40 +01:00
Pratik Naik
489abfd3b2 Ensure JoinAssociation uses aliased table name when multiple associations have hash conditions on the same table 2009-04-20 13:51:11 +01:00
David Heinemeier Hansson
abb899c54e Added :touch option to belongs_to associations that will touch the parent record when the current record is saved or destroyed [DHH] 2009-04-16 17:25:55 -05:00
David Heinemeier Hansson
fdb61f02c5 Added ActiveRecord::Base#touch to update the updated_at/on attributes with the current time [DHH] 2009-04-16 16:48:37 -05:00
Max Lapshin
70de8e64e3 Support multiple schemas in table names for postgresql [#390 state:resolved]
Signed-off-by: Pratik Naik <pratiknaik@gmail.com>
2009-04-05 12:36:36 +01:00
Jason King
ac3848201d SQLite adapters now support DDL transactions [#2080 state:resolved]
Signed-off-by: Pratik Naik <pratiknaik@gmail.com>
2009-03-14 12:58:42 +00:00
Luca Guidi
47bdf3bf40 Ensure AutosaveAssociation runs remove callbacks [#2146 state:resolved]
Signed-off-by: Eloy Duran <eloy.de.enige@gmail.com>
Signed-off-by: Pratik Naik <pratiknaik@gmail.com>
2009-03-12 15:24:37 +00:00
Elijah Miller
91b98cf0a5 Returning nil from named scope lambda is equivalent to an empty hash [#1773 state:resolved]
Signed-off-by: Pratik Naik <pratiknaik@gmail.com>
2009-03-12 15:06:19 +00:00
Murray Steele
db26ace030 Ensure NoMethodError isn't raised when some of the nested eager loaded associations are empty [#1696 state:resolved]
Signed-off-by: Pratik Naik <pratiknaik@gmail.com>
2009-03-12 13:49:16 +00:00
Will Bryant
92dadf6d79 Fixed autosave checks on objects with hm:t in :include [#2213 state:resolved]
Signed-off-by: Pratik Naik <pratiknaik@gmail.com>
2009-03-12 13:26:21 +00:00
Pratik Naik
106976df09 Ensure ActiveRecord::Base.find_in_batches fires doesnt fire an extra query unless needed 2009-03-11 15:24:30 +00:00
Pratik Naik
f23adf0ed4 Add tests for AssociationCollection#find_each and AssociationCollection#find_in_batches 2009-03-11 15:07:24 +00:00
Pratik Naik
0b6f514947 Add NamedScope#find_each tests [#2201 state:resolved] 2009-03-11 15:07:24 +00:00