Commit Graph

663 Commits

Author SHA1 Message Date
Jeremy Kemper
88bd86e8bc Run validations in the order they were declared. Closes #6657.
git-svn-id: http://svn-commit.rubyonrails.org/rails/trunk@5588 5ecf4fe2-1ee6-0310-87b1-e25e094e27de
2006-11-20 10:12:38 +00:00
Jeremy Kemper
19c99acfbc MySQL: detect when a NOT NULL column without a default value is misreported as default ''. Can't detect for string, text, and binary columns since '' is a legitimate default. Closes #6156.
git-svn-id: http://svn-commit.rubyonrails.org/rails/trunk@5586 5ecf4fe2-1ee6-0310-87b1-e25e094e27de
2006-11-20 08:54:42 +00:00
Jeremy Kemper
50ee332c4a Cleanup SQLite AUTOINCREMENT: exclude sqlite_sequence table, factor out feature availability check.
git-svn-id: http://svn-commit.rubyonrails.org/rails/trunk@5520 5ecf4fe2-1ee6-0310-87b1-e25e094e27de
2006-11-14 03:32:16 +00:00
Jeremy Kemper
4978d1dce7 Oracle: automatically detect the primary key. Closes #6594.
git-svn-id: http://svn-commit.rubyonrails.org/rails/trunk@5514 5ecf4fe2-1ee6-0310-87b1-e25e094e27de
2006-11-13 19:23:32 +00:00
Jeremy Kemper
63df6eb382 Don't inspect unloaded associations. Closes #2905.
git-svn-id: http://svn-commit.rubyonrails.org/rails/trunk@5478 5ecf4fe2-1ee6-0310-87b1-e25e094e27de
2006-11-10 02:00:14 +00:00
Jeremy Kemper
d97a84fb59 SQLite: use AUTOINCREMENT primary key in >= 3.1.0. Closes #6588.
git-svn-id: http://svn-commit.rubyonrails.org/rails/trunk@5477 5ecf4fe2-1ee6-0310-87b1-e25e094e27de
2006-11-09 21:17:43 +00:00
Jeremy Kemper
9d2da04680 Cache inheritance_column. Closes #6592.
git-svn-id: http://svn-commit.rubyonrails.org/rails/trunk@5474 5ecf4fe2-1ee6-0310-87b1-e25e094e27de
2006-11-09 19:31:31 +00:00
Jeremy Kemper
66b92abfc3 Firebird: decimal/numeric support. Closes #6408.
git-svn-id: http://svn-commit.rubyonrails.org/rails/trunk@5459 5ecf4fe2-1ee6-0310-87b1-e25e094e27de
2006-11-07 19:56:01 +00:00
Jeremy Kemper
a3dba1ed7c Find with :include respects scoped :order. Closes #5850.
git-svn-id: http://svn-commit.rubyonrails.org/rails/trunk@5445 5ecf4fe2-1ee6-0310-87b1-e25e094e27de
2006-11-07 00:18:07 +00:00
Jeremy Kemper
2fbe0ae7a2 Support nil and Array in :conditions => { attr => value } hashes. Closes #6548.
git-svn-id: http://svn-commit.rubyonrails.org/rails/trunk@5435 5ecf4fe2-1ee6-0310-87b1-e25e094e27de
2006-11-05 21:27:51 +00:00
Jeremy Kemper
b6171e7105 SQLite: count(distinct) queries supported in >= 3.2.6, fix calculations workaround, remove count(distinct) query rewrite, cleanup test connection scripts. Closes #6544.
git-svn-id: http://svn-commit.rubyonrails.org/rails/trunk@5426 5ecf4fe2-1ee6-0310-87b1-e25e094e27de
2006-11-05 02:01:31 +00:00
Jeremy Kemper
c7c3994d31 Dynamically generate reader methods for serialized attributes. Closes #6362.
git-svn-id: http://svn-commit.rubyonrails.org/rails/trunk@5416 5ecf4fe2-1ee6-0310-87b1-e25e094e27de
2006-11-02 20:20:46 +00:00
Jeremy Kemper
88d9b32496 Deprecation: object transactions warning.
git-svn-id: http://svn-commit.rubyonrails.org/rails/trunk@5405 5ecf4fe2-1ee6-0310-87b1-e25e094e27de
2006-11-02 18:12:18 +00:00
Jeremy Kemper
ac715b2bcb has_one :dependent => :nullify ignores nil associates. Closes #6528.
git-svn-id: http://svn-commit.rubyonrails.org/rails/trunk@5401 5ecf4fe2-1ee6-0310-87b1-e25e094e27de
2006-11-02 09:45:17 +00:00
Jeremy Kemper
70840d4b7f Oracle: resolve test failures, use prefetched primary key for inserts, check for null defaults. Factor out some common methods from all adapters. Closes #6515.
git-svn-id: http://svn-commit.rubyonrails.org/rails/trunk@5384 5ecf4fe2-1ee6-0310-87b1-e25e094e27de
2006-11-01 20:28:48 +00:00
Rick Olson
cdb5132c41 Fix has_many :through to add the appropriate conditions when going through an association using STI. Closes #5783. [Jonathan Viney]
git-svn-id: http://svn-commit.rubyonrails.org/rails/trunk@5305 5ecf4fe2-1ee6-0310-87b1-e25e094e27de
2006-10-15 16:37:11 +00:00
Rick Olson
2c6b6e2866 automatically add primary key to #select_limited_ids_list order by clause for databases that require order columns in the distinct statements (postgresql) [Rick]
git-svn-id: http://svn-commit.rubyonrails.org/rails/trunk@5292 5ecf4fe2-1ee6-0310-87b1-e25e094e27de
2006-10-13 08:52:33 +00:00
Rick Olson
e789b26e65 fix select_limited_ids_list issues in postgresql, retain current behavior in other adapters [Rick]
git-svn-id: http://svn-commit.rubyonrails.org/rails/trunk@5291 5ecf4fe2-1ee6-0310-87b1-e25e094e27de
2006-10-13 08:29:00 +00:00
Rick Olson
ce1d14430f add test for select_limited_ids_list that passes in mysql/sqlite and fails in postgresql
git-svn-id: http://svn-commit.rubyonrails.org/rails/trunk@5290 5ecf4fe2-1ee6-0310-87b1-e25e094e27de
2006-10-13 07:46:38 +00:00
Rick Olson
7870494673 Restore eager condition interpolation, document it's differences [Rick]
git-svn-id: http://svn-commit.rubyonrails.org/rails/trunk@5284 5ecf4fe2-1ee6-0310-87b1-e25e094e27de
2006-10-11 14:02:24 +00:00
Jeremy Kemper
2c3ca4c4e6 Don't rollback in teardown unless a transaction was started. Don't start a transaction in create_fixtures if a transaction is started. Closes #6282.
git-svn-id: http://svn-commit.rubyonrails.org/rails/trunk@5270 5ecf4fe2-1ee6-0310-87b1-e25e094e27de
2006-10-09 07:48:27 +00:00
Rick Olson
850087f0bd Add #delete support to has_many :through associations. Closes #6049 [Martin Landers]
git-svn-id: http://svn-commit.rubyonrails.org/rails/trunk@5267 5ecf4fe2-1ee6-0310-87b1-e25e094e27de
2006-10-09 03:21:52 +00:00
Rick Olson
8e3bf70bcd Removes the ability for eager loaded conditions to be interpolated, since there is no model instance to use as a context for interpolation. #5553 [turnip@turnipspatch.com]
git-svn-id: http://svn-commit.rubyonrails.org/rails/trunk@5264 5ecf4fe2-1ee6-0310-87b1-e25e094e27de
2006-10-09 02:46:57 +00:00
David Heinemeier Hansson
fe4d5ea786 Fixed rename_table on SQLite tables with indexes defined (closes #5942) [brandon@opensoul.org]
git-svn-id: http://svn-commit.rubyonrails.org/rails/trunk@5260 5ecf4fe2-1ee6-0310-87b1-e25e094e27de
2006-10-09 02:14:36 +00:00
David Heinemeier Hansson
943be923f0 Added timeout option to SQLite3 configurations to deal more gracefully with SQLite3::BusyException, now the connection can instead retry for x seconds to see if the db clears up before throwing that exception (closes #6126) [wreese@gmail.com] Added default timeout setting of 5 seconds to SQLite3 database.yml configurations [DHH]
git-svn-id: http://svn-commit.rubyonrails.org/rails/trunk@5258 5ecf4fe2-1ee6-0310-87b1-e25e094e27de
2006-10-09 02:02:27 +00:00
David Heinemeier Hansson
55aab5b8ac Added update_attributes! which uses save! to raise an exception if a validation error prevents saving (closes #6192) [jonathan]
git-svn-id: http://svn-commit.rubyonrails.org/rails/trunk@5256 5ecf4fe2-1ee6-0310-87b1-e25e094e27de
2006-10-09 01:52:24 +00:00
David Heinemeier Hansson
9fd88d7939 Deprecated add_on_boundary_breaking (use validates_length_of instead) (closes #6292) [BobSilva]
git-svn-id: http://svn-commit.rubyonrails.org/rails/trunk@5255 5ecf4fe2-1ee6-0310-87b1-e25e094e27de
2006-10-09 01:42:09 +00:00
Jeremy Kemper
0c3c131f3b The has_many create method works with polymorphic associations. Closes #6361.
git-svn-id: http://svn-commit.rubyonrails.org/rails/trunk@5230 5ecf4fe2-1ee6-0310-87b1-e25e094e27de
2006-10-08 06:45:32 +00:00
Jamis Buck
53737eadd6 add a failing test so we can make it happy again
git-svn-id: http://svn-commit.rubyonrails.org/rails/trunk@5225 5ecf4fe2-1ee6-0310-87b1-e25e094e27de
2006-10-04 15:38:59 +00:00
Jeremy Kemper
ef4fb3dee2 save! shouldn't validate twice. Closes #6324.
git-svn-id: http://svn-commit.rubyonrails.org/rails/trunk@5215 5ecf4fe2-1ee6-0310-87b1-e25e094e27de
2006-10-02 03:21:32 +00:00
Jeremy Kemper
0092d0ac6d Association collections have an _ids reader method to match the existing writer for collection_select convenience (e.g. employee.task_ids). The writer method skips blank ids so you can safely do @employee.task_ids = params[:tasks] without checking every time for an empty list or blank values. References #1887, Closes #5780.
git-svn-id: http://svn-commit.rubyonrails.org/rails/trunk@5214 5ecf4fe2-1ee6-0310-87b1-e25e094e27de
2006-10-01 19:15:51 +00:00
Jeremy Kemper
25cce68013 Use class name as XML_TYPE_NAMES key.
git-svn-id: http://svn-commit.rubyonrails.org/rails/trunk@5210 5ecf4fe2-1ee6-0310-87b1-e25e094e27de
2006-09-29 22:45:58 +00:00
Jeremy Kemper
a0bf0195a5 Deprecation: count class method should be called with an options hash rather than two args for conditions and joins. Closes #6287.
git-svn-id: http://svn-commit.rubyonrails.org/rails/trunk@5192 5ecf4fe2-1ee6-0310-87b1-e25e094e27de
2006-09-26 17:02:45 +00:00
Jeremy Kemper
1caa76304b has_one associations with a nil target may be safely marshaled. Closes #6279.
git-svn-id: http://svn-commit.rubyonrails.org/rails/trunk@5188 5ecf4fe2-1ee6-0310-87b1-e25e094e27de
2006-09-26 06:56:17 +00:00
Jeremy Kemper
148261a9ef organize associations tests
git-svn-id: http://svn-commit.rubyonrails.org/rails/trunk@5181 5ecf4fe2-1ee6-0310-87b1-e25e094e27de
2006-09-25 06:38:55 +00:00
Jeremy Kemper
9898a62bf7 use a real test
git-svn-id: http://svn-commit.rubyonrails.org/rails/trunk@5180 5ecf4fe2-1ee6-0310-87b1-e25e094e27de
2006-09-25 05:58:38 +00:00
Michael Koziarski
83d972e365 Duplicate the hash provided to AR::Base#to_xml to prevent unexpected side effects [Koz]
git-svn-id: http://svn-commit.rubyonrails.org/rails/trunk@5170 5ecf4fe2-1ee6-0310-87b1-e25e094e27de
2006-09-24 01:37:45 +00:00
Michael Koziarski
98a412aa38 Add a :namespace option to AR::Base#to_xml [Koz]
git-svn-id: http://svn-commit.rubyonrails.org/rails/trunk@5130 5ecf4fe2-1ee6-0310-87b1-e25e094e27de
2006-09-17 16:31:30 +00:00
Jeremy Kemper
760f6ae3f4 Stray code.
git-svn-id: http://svn-commit.rubyonrails.org/rails/trunk@5117 5ecf4fe2-1ee6-0310-87b1-e25e094e27de
2006-09-15 07:11:38 +00:00
Jeremy Kemper
3f1acf49bd Deprecation tests. Remove warnings for dynamic finders and for the foo_count ethod if it's also an attribute.
git-svn-id: http://svn-commit.rubyonrails.org/rails/trunk@5116 5ecf4fe2-1ee6-0310-87b1-e25e094e27de
2006-09-15 07:02:05 +00:00
Jeremy Kemper
3ab1cb6a6a Mock Time.now for more accurate Touch mixin tests. Closes #6213.
git-svn-id: http://svn-commit.rubyonrails.org/rails/trunk@5106 5ecf4fe2-1ee6-0310-87b1-e25e094e27de
2006-09-14 00:50:42 +00:00
Jeremy Kemper
7c4b6a55b6 Rollback [4917]. Closes #785.
git-svn-id: http://svn-commit.rubyonrails.org/rails/trunk@5067 5ecf4fe2-1ee6-0310-87b1-e25e094e27de
2006-09-07 21:34:35 +00:00
David Heinemeier Hansson
85fbb22f07 Backed out of new_record? to new? transformation as it would screw up existing models that did boolean calls on "new" attributes [DHH]
git-svn-id: http://svn-commit.rubyonrails.org/rails/trunk@5018 5ecf4fe2-1ee6-0310-87b1-e25e094e27de
2006-09-05 18:54:24 +00:00
David Heinemeier Hansson
9d7e6432b2 Deprecated ActiveRecord::Base.new_record? in favor of ActiveRecord::Base.new? (old version still works until Rails 2.0) [DHH]
git-svn-id: http://svn-commit.rubyonrails.org/rails/trunk@5017 5ecf4fe2-1ee6-0310-87b1-e25e094e27de
2006-09-05 18:48:10 +00:00
Rick Olson
d52cee3e3b Add deprecation warning for inferred foreign key. #6029 [Josh Susser]
git-svn-id: http://svn-commit.rubyonrails.org/rails/trunk@4992 5ecf4fe2-1ee6-0310-87b1-e25e094e27de
2006-09-04 18:55:30 +00:00
Jeremy Kemper
e2a397ff8a Deprecation: use :dependent => :delete_all rather than :exclusively_dependent => true. Closes #6024.
git-svn-id: http://svn-commit.rubyonrails.org/rails/trunk@4981 5ecf4fe2-1ee6-0310-87b1-e25e094e27de
2006-09-04 07:08:16 +00:00
Jeremy Kemper
be54075956 set ActiveSupport::Deprecation.debug = true to see backtraces for deprecation callers. off by default. on for Rails tests.
git-svn-id: http://svn-commit.rubyonrails.org/rails/trunk@4966 5ecf4fe2-1ee6-0310-87b1-e25e094e27de
2006-09-04 03:38:13 +00:00
Jeremy Kemper
528618a910 Optimistic locking: gracefully handle nil versions, treat as zero. Closes #5908.
git-svn-id: http://svn-commit.rubyonrails.org/rails/trunk@4958 5ecf4fe2-1ee6-0310-87b1-e25e094e27de
2006-09-04 00:02:38 +00:00
Jeremy Kemper
28fb465d75 Validation tests
git-svn-id: http://svn-commit.rubyonrails.org/rails/trunk@4918 5ecf4fe2-1ee6-0310-87b1-e25e094e27de
2006-09-03 17:54:48 +00:00
Jeremy Kemper
d0696d7641 to_xml: the :methods option works on arrays of records. Closes #5845.
git-svn-id: http://svn-commit.rubyonrails.org/rails/trunk@4909 5ecf4fe2-1ee6-0310-87b1-e25e094e27de
2006-09-02 21:00:09 +00:00