Commit Graph

1078 Commits

Author SHA1 Message Date
Jeremy Kemper
48d4d43f92 MySQL: introduce Mysql::Result#all_hashes to support further optimization. Closes #5581.
git-svn-id: http://svn-commit.rubyonrails.org/rails/trunk@5219 5ecf4fe2-1ee6-0310-87b1-e25e094e27de
2006-10-02 20:43:13 +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
Rick Olson
52547f5331 Add an attribute reader method for ActiveRecord::Base.observers [Rick Olson]
git-svn-id: http://svn-commit.rubyonrails.org/rails/trunk@5211 5ecf4fe2-1ee6-0310-87b1-e25e094e27de
2006-09-30 01:37:07 +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
f0152fb610 Include caller of deprecated count method.
git-svn-id: http://svn-commit.rubyonrails.org/rails/trunk@5204 5ecf4fe2-1ee6-0310-87b1-e25e094e27de
2006-09-29 07:48:16 +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
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
David Heinemeier Hansson
5d50dee71f Version updates and missing licenses
git-svn-id: http://svn-commit.rubyonrails.org/rails/trunk@5120 5ecf4fe2-1ee6-0310-87b1-e25e094e27de
2006-09-15 10:13:27 +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
5589c734a8 Improve yaml fixtures error reporting. Closes #6205.
git-svn-id: http://svn-commit.rubyonrails.org/rails/trunk@5104 5ecf4fe2-1ee6-0310-87b1-e25e094e27de
2006-09-13 23:31:54 +00:00
David Heinemeier Hansson
e2d8451024 We cant make MySQL 5 happy if it means making SQLite and PostgreSQL cry. So currently MySQL 5 is not fully supported for Rails when youre using eager loading (closes #6133, #6135). I have contacted MySQL to make them fix http://bugs.mysql.com/bug.php?id=13551 [DHH]
git-svn-id: http://svn-commit.rubyonrails.org/rails/trunk@5075 5ecf4fe2-1ee6-0310-87b1-e25e094e27de
2006-09-08 22:01:00 +00:00
David Heinemeier Hansson
84bfdafa08 Added parentheses around FROM clauses generated by Base and associations since MySQL 5 claim that to be the standard (and will screw up joins if its not there), see http://bugs.mysql.com/bug.php?id=13551 [DHH]
git-svn-id: http://svn-commit.rubyonrails.org/rails/trunk@5073 5ecf4fe2-1ee6-0310-87b1-e25e094e27de
2006-09-08 18:14:02 +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
Michael Koziarski
b445ab986a Rename quote to quote_value so the name can be used in AR models. #3628 [Koz]
git-svn-id: http://svn-commit.rubyonrails.org/rails/trunk@5007 5ecf4fe2-1ee6-0310-87b1-e25e094e27de
2006-09-04 23:41:13 +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
David Heinemeier Hansson
68b909726b Fixed the Ruby/MySQL adapter we ship with Active Record to work with the new authentication handshake that was introduced in MySQL 4.1, along with the other protocol changes made at that time (closes #5723) [jimw@mysql.com]
git-svn-id: http://svn-commit.rubyonrails.org/rails/trunk@4990 5ecf4fe2-1ee6-0310-87b1-e25e094e27de
2006-09-04 17:55:28 +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
f3d6726dfa Document validates_presences_of behavior with booleans: you probably want validates_inclusion_of :attr, :in => [true, false]. Closes #2253.
git-svn-id: http://svn-commit.rubyonrails.org/rails/trunk@4980 5ecf4fe2-1ee6-0310-87b1-e25e094e27de
2006-09-04 06:33:22 +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
David Heinemeier Hansson
fef2d880a5 Update copyright times
git-svn-id: http://svn-commit.rubyonrails.org/rails/trunk@4922 5ecf4fe2-1ee6-0310-87b1-e25e094e27de
2006-09-03 18:53:05 +00:00
Jeremy Kemper
d9839c1952 validates_confirmation_of only kicks in when the attribute, rather than its confirmation, is present. Closes #785.
git-svn-id: http://svn-commit.rubyonrails.org/rails/trunk@4917 5ecf4fe2-1ee6-0310-87b1-e25e094e27de
2006-09-03 17:53:51 +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
Jeremy Kemper
7aa9eed88f Deprecation: update docs. Closes #5998.
git-svn-id: http://svn-commit.rubyonrails.org/rails/trunk@4898 5ecf4fe2-1ee6-0310-87b1-e25e094e27de
2006-09-01 23:37:10 +00:00
Jeremy Kemper
b1257d96b7 has_many :through conditions are sanitized by the associating class. Closes #5971.
git-svn-id: http://svn-commit.rubyonrails.org/rails/trunk@4893 5ecf4fe2-1ee6-0310-87b1-e25e094e27de
2006-09-01 05:31:56 +00:00
Jamis Buck
3ea2549e7a Fix spurious newlines and spaces in AR::Base#to_xml output
git-svn-id: http://svn-commit.rubyonrails.org/rails/trunk@4862 5ecf4fe2-1ee6-0310-87b1-e25e094e27de
2006-08-30 01:34:55 +00:00
Jeremy Kemper
3704088ebd has_one supports the :dependent => :delete option which skips the typical callback chain and deletes the associated object directly from the database. Closes #5927.
git-svn-id: http://svn-commit.rubyonrails.org/rails/trunk@4848 5ecf4fe2-1ee6-0310-87b1-e25e094e27de
2006-08-29 17:06:27 +00:00
Jeremy Kemper
bcbce90b1b Nested subclasses are not prefixed with the parent class' table_name since they should always use the base class' table_name. Closes #5911.
git-svn-id: http://svn-commit.rubyonrails.org/rails/trunk@4819 5ecf4fe2-1ee6-0310-87b1-e25e094e27de
2006-08-25 15:25:08 +00:00
Jeremy Kemper
ee2397036f SQLServer: work around bug where some unambiguous date formats are not correctly identified if the session language is set to german. Closes #5894.
git-svn-id: http://svn-commit.rubyonrails.org/rails/trunk@4816 5ecf4fe2-1ee6-0310-87b1-e25e094e27de
2006-08-25 03:56:21 +00:00
Jeremy Kemper
4b4dd54082 Clashing type columns due to a sloppy join shouldn't wreck single-table inheritance. Closes #5838.
git-svn-id: http://svn-commit.rubyonrails.org/rails/trunk@4813 5ecf4fe2-1ee6-0310-87b1-e25e094e27de
2006-08-24 03:36:48 +00:00
Jeremy Kemper
842ce34bbc Fixtures: correct escaping of \n and \r. Closes #5859.
git-svn-id: http://svn-commit.rubyonrails.org/rails/trunk@4811 5ecf4fe2-1ee6-0310-87b1-e25e094e27de
2006-08-24 01:50:24 +00:00
Jeremy Kemper
8cbe22ab51 Migrations: gracefully handle missing migration files. Closes #5857.
git-svn-id: http://svn-commit.rubyonrails.org/rails/trunk@4809 5ecf4fe2-1ee6-0310-87b1-e25e094e27de
2006-08-23 05:49:40 +00:00
Jeremy Kemper
8f89f14fc8 Rollback #5819 since it's compatible with PostgreSQL 8.1 only. References #5819.
git-svn-id: http://svn-commit.rubyonrails.org/rails/trunk@4806 5ecf4fe2-1ee6-0310-87b1-e25e094e27de
2006-08-22 08:58:32 +00:00
Jeremy Kemper
edb4208857 to_xml: correct naming of included associations. Closes #5831.
git-svn-id: http://svn-commit.rubyonrails.org/rails/trunk@4794 5ecf4fe2-1ee6-0310-87b1-e25e094e27de
2006-08-20 14:38:58 +00:00
Jeremy Kemper
70577d0dca Pushing a record onto a has_many :through sets the association's foreign key to the associate's primary key and adds it to the correct association. Closes #5829.
git-svn-id: http://svn-commit.rubyonrails.org/rails/trunk@4792 5ecf4fe2-1ee6-0310-87b1-e25e094e27de
2006-08-20 05:23:34 +00:00
Jeremy Kemper
e96c58224c unbraindeadify addition to has_many :through
git-svn-id: http://svn-commit.rubyonrails.org/rails/trunk@4791 5ecf4fe2-1ee6-0310-87b1-e25e094e27de
2006-08-19 14:56:58 +00:00
Jeremy Kemper
81b05fd909 Pushing a record onto a has_many :through sets the association's foreign key to the associate's primary key. Closes #5815.
git-svn-id: http://svn-commit.rubyonrails.org/rails/trunk@4790 5ecf4fe2-1ee6-0310-87b1-e25e094e27de
2006-08-19 09:13:00 +00:00
Jeremy Kemper
a752fdb321 whitespace
git-svn-id: http://svn-commit.rubyonrails.org/rails/trunk@4789 5ecf4fe2-1ee6-0310-87b1-e25e094e27de
2006-08-19 05:55:15 +00:00
Jeremy Kemper
b0a86f8c0e PostgreSQL: simplify index introspection query. Closes #5819.
git-svn-id: http://svn-commit.rubyonrails.org/rails/trunk@4788 5ecf4fe2-1ee6-0310-87b1-e25e094e27de
2006-08-19 05:46:21 +00:00
Jeremy Kemper
0da426be96 Add records to has_many :through using <<, push, and concat by creating the association record. Raise if base or associate are new records since both ids are required to create the association. #build raises since you can't associate an unsaved record. #create! takes an attributes hash and creates the associated record and its association in a transaction.
git-svn-id: http://svn-commit.rubyonrails.org/rails/trunk@4786 5ecf4fe2-1ee6-0310-87b1-e25e094e27de
2006-08-18 07:35:07 +00:00
Jeremy Kemper
18057d2fb6 Cache nil results for :included has_one associations also. Closes #5787.
git-svn-id: http://svn-commit.rubyonrails.org/rails/trunk@4783 5ecf4fe2-1ee6-0310-87b1-e25e094e27de
2006-08-17 23:46:55 +00:00
Jeremy Kemper
7aaf4867d2 Included associations: go deep.
git-svn-id: http://svn-commit.rubyonrails.org/rails/trunk@4776 5ecf4fe2-1ee6-0310-87b1-e25e094e27de
2006-08-16 18:10:52 +00:00
Tobias Lütke
ae74e8e9fe Fixed a bug which would cause .save to fail after trying to access a empty has_one association on a unsaved record.
git-svn-id: http://svn-commit.rubyonrails.org/rails/trunk@4773 5ecf4fe2-1ee6-0310-87b1-e25e094e27de
2006-08-16 16:05:48 +00:00
Jeremy Kemper
14101c7b40 Nested classes are given table names prefixed by the singular form of the parent's table name.
git-svn-id: http://svn-commit.rubyonrails.org/rails/trunk@4770 5ecf4fe2-1ee6-0310-87b1-e25e094e27de
2006-08-16 09:46:43 +00:00
Jeremy Kemper
bc7f2315ba Make indexed columns easy to extract from the index name. Oracle users should explicitly assign index names due to field length restrictions.
git-svn-id: http://svn-commit.rubyonrails.org/rails/trunk@4768 5ecf4fe2-1ee6-0310-87b1-e25e094e27de
2006-08-15 23:51:27 +00:00
Jeremy Kemper
79542f8d0b Migrations: uniquely name multicolumn indexes so you don't have to.
git-svn-id: http://svn-commit.rubyonrails.org/rails/trunk@4767 5ecf4fe2-1ee6-0310-87b1-e25e094e27de
2006-08-15 23:05:01 +00:00