Commit Graph

1503 Commits

Author SHA1 Message Date
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
Pratik Naik
04333482bd Rename ActiveRecord::Base.each to ActiveRecord::Base.find_each 2009-03-11 15:07:23 +00:00
Jeremy Kemper
19ad375e7a Don't duplicate :order from scope and options, it makes mysql do extra work 2009-03-10 23:11:05 -07:00
Manfred Stienstra
c3aa2bcdcf Ensure nested with_scope merges conditions inside out [#2193 state:resolved]
Signed-off-by: Pratik Naik <pratiknaik@gmail.com>
2009-03-10 11:49:58 +00:00
Bruce Krysiak
8272630ce8 Ensure ActiveRecord#to_xml respects :skip_types for included associations [#1632 state:resolved]
Signed-off-by: Pratik Naik <pratiknaik@gmail.com>
2009-03-10 11:17:16 +00:00
Curtis Hawthorne
0d922885fb Ensure Model#destroy respects optimistic locking [#1966 state:resolved]
Signed-off-by: Pratik Naik <pratiknaik@gmail.com>
2009-03-09 14:56:09 +00:00
Jim Remsik and Tim Pope
1e6c50e21b Ensure has_many :through works with changed primary keys [#736 state:resolved]
Signed-off-by: Pratik Naik <pratiknaik@gmail.com>
2009-03-09 13:43:28 +00:00
Rob Anderton
faf4ba6b79 Allow find(:last) :order be a symbol [#2024 state:resolved]
Signed-off-by: Pratik Naik <pratiknaik@gmail.com>
2009-03-09 12:52:14 +00:00
Jan De Poorter
277c799d58 Fix find_by_last when order is given [#2127 state:committed]
Signed-off-by: David Heinemeier Hansson <david@loudthinking.com>
2009-03-09 13:02:31 +01:00
Jeremy Kemper
1c36172c13 Ruby 1.9 compat: rename deprecated assert_raises to assert_raise.
[#1617 state:resolved]
2009-03-08 13:11:58 -07:00
Jeffrey Hardy
96eaeee446 Add ActiveRecord::Base#invalid? as the opposite of #valid? [#2159 state:resolved]
Signed-off-by: Pratik Naik <pratiknaik@gmail.com>
2009-03-08 15:20:23 +00:00
Pratik Naik
df8669d4b5 Fix calculation tests to work on sqlite 2009-03-07 16:36:40 +00:00
stopdropandrew
6543426c73 Ensure calculations respect scoped :select [#1334 state:resolved]
Signed-off-by: Pratik Naik <pratiknaik@gmail.com>
2009-03-07 15:26:56 +00:00
Arthur Klepchukov
ccb0a92fa2 Ensure validates_uniqueness_of considers limit on the field. [#1042 state:resolved]
Signed-off-by: Pratik Naik <pratiknaik@gmail.com>
2009-03-07 13:52:17 +00:00
Adam Milligan
f36513653f Fix RDoc grammar and ensure hm:t tests can run in isolation. [#1644 state:resolved]
Signed-off-by: Pratik Naik <pratiknaik@gmail.com>
2009-03-07 12:34:56 +00:00
Pratik Naik
fd3ccbe955 DRY with_kcode in Active Record tests 2009-03-07 11:06:44 +00:00
Marcello Nuccio
dfcf1e4cf6 Fixed broken migrations tests: added assert_equal. [#1704 state:resolved]
Signed-off-by: Pratik Naik <pratiknaik@gmail.com>
2009-03-07 11:00:24 +00:00