Commit Graph

320 Commits

Author SHA1 Message Date
Jeremy Kemper
e48b062eed Sanitize Base#inspect. Closes #8392.
git-svn-id: http://svn-commit.rubyonrails.org/rails/trunk@6761 5ecf4fe2-1ee6-0310-87b1-e25e094e27de
2007-05-18 02:11:43 +00:00
Michael Koziarski
ebbe4fb0d4 Replace the transaction {|transaction|..} semantics with a new Exception ActiveRecord::Rollback. Closes #8030 [Koz]
git-svn-id: http://svn-commit.rubyonrails.org/rails/trunk@6754 5ecf4fe2-1ee6-0310-87b1-e25e094e27de
2007-05-18 01:02:08 +00:00
Marcel Molina
ee614d6319 Add documentation caveat about when to use count_by_sql. Closes #8090. [fearoffish]
git-svn-id: http://svn-commit.rubyonrails.org/rails/trunk@6685 5ecf4fe2-1ee6-0310-87b1-e25e094e27de
2007-05-06 05:10:19 +00:00
Marcel Molina
15dc567e0f Also add documentation enhancements for increment_counter. Closes #8092. [fearoffish]
git-svn-id: http://svn-commit.rubyonrails.org/rails/trunk@6684 5ecf4fe2-1ee6-0310-87b1-e25e094e27de
2007-05-06 05:08:05 +00:00
Marcel Molina
5bd35705ca Enhance documentation for decrement_counter. Closes #8093. [fearoffish]
git-svn-id: http://svn-commit.rubyonrails.org/rails/trunk@6683 5ecf4fe2-1ee6-0310-87b1-e25e094e27de
2007-05-06 05:06:26 +00:00
David Heinemeier Hansson
57352f86d4 Improved performance by relying less on exception raising #8159 [Blaine]
git-svn-id: http://svn-commit.rubyonrails.org/rails/trunk@6571 5ecf4fe2-1ee6-0310-87b1-e25e094e27de
2007-04-24 16:58:24 +00:00
David Heinemeier Hansson
52a9e5089c Added ActiveRecord::Base.inspect to return a column-view like #<Post id:integer, title:string, body:text> [DHH]
git-svn-id: http://svn-commit.rubyonrails.org/rails/trunk@6549 5ecf4fe2-1ee6-0310-87b1-e25e094e27de
2007-04-21 17:35:09 +00:00
Rick Olson
2a305949d7 documentation project patches, closes #7342, #7319, #7316, #7190 [jeremymcanally]
git-svn-id: http://svn-commit.rubyonrails.org/rails/trunk@6470 5ecf4fe2-1ee6-0310-87b1-e25e094e27de
2007-03-27 14:04:06 +00:00
Jeremy Kemper
a38f28fff1 Base.update_all :order and :limit options. Useful for MySQL updates that must be ordered to avoid violating unique constraints.
git-svn-id: http://svn-commit.rubyonrails.org/rails/trunk@6440 5ecf4fe2-1ee6-0310-87b1-e25e094e27de
2007-03-17 15:48:47 +00:00
Jeremy Kemper
14cc8d2faf find_or_create_by_* takes a hash so you can create with more attributes than are in the method name. Closes #7368.
git-svn-id: http://svn-commit.rubyonrails.org/rails/trunk@6420 5ecf4fe2-1ee6-0310-87b1-e25e094e27de
2007-03-14 01:08:45 +00:00
Michael Koziarski
5bd116ccf4 Make sure with_scope takes both :select and :joins into account when setting :readonly. Allows you to save records you retrieve using finders on a has_many :through associations. [Koz]
git-svn-id: http://svn-commit.rubyonrails.org/rails/trunk@6413 5ecf4fe2-1ee6-0310-87b1-e25e094e27de
2007-03-13 09:45:09 +00:00
Jeremy Kemper
98165fd31e Consistently quote primary key column names. Closes #7763.
git-svn-id: http://svn-commit.rubyonrails.org/rails/trunk@6364 5ecf4fe2-1ee6-0310-87b1-e25e094e27de
2007-03-09 03:23:37 +00:00
Jeremy Kemper
1e9e198cc5 Note that find results may not be in the same order as the id arguments. Closes #7719.
git-svn-id: http://svn-commit.rubyonrails.org/rails/trunk@6347 5ecf4fe2-1ee6-0310-87b1-e25e094e27de
2007-03-06 09:33:08 +00:00
Jamis Buck
83752373b9 Made increment_counter/decrement_counter play nicely with optimistic locking, and added a more general update_counters method
git-svn-id: http://svn-commit.rubyonrails.org/rails/trunk@6139 5ecf4fe2-1ee6-0310-87b1-e25e094e27de
2007-02-07 16:10:40 +00:00
Jeremy Kemper
5acea7fc9c update_all can take a Hash argument. sanitize_sql splits into two methods for conditions and assignment since NULL values and delimiters are handled differently. References #6583, closes #7365.
git-svn-id: http://svn-commit.rubyonrails.org/rails/trunk@6073 5ecf4fe2-1ee6-0310-87b1-e25e094e27de
2007-01-28 15:12:54 +00:00
Rick Olson
1a11bffde1 Don't create instance writer methods for class attributes. Closes #7401 [Rick]
git-svn-id: http://svn-commit.rubyonrails.org/rails/trunk@6051 5ecf4fe2-1ee6-0310-87b1-e25e094e27de
2007-01-28 01:31:31 +00:00
Rick Olson
8296c680d5 Remove useless code in #attribute_present? since 0 != blank?. Closes #7249 [Josh Susser]. Fix minor doc typos. Closes #7157 [Josh Susser]
git-svn-id: http://svn-commit.rubyonrails.org/rails/trunk@6018 5ecf4fe2-1ee6-0310-87b1-e25e094e27de
2007-01-23 05:10:21 +00:00
Jeremy Kemper
06afb8c746 Subclasses of an abstract class work with single-table inheritance. References #5704, closes #7284.
git-svn-id: http://svn-commit.rubyonrails.org/rails/trunk@6013 5ecf4fe2-1ee6-0310-87b1-e25e094e27de
2007-01-23 04:19:16 +00:00
Tobias Lütke
e24d2f7234 Apply scoping during initialize instead of create. Fixes setting of foreign key when using find_or_initialize_by with scoping.
git-svn-id: http://svn-commit.rubyonrails.org/rails/trunk@5913 5ecf4fe2-1ee6-0310-87b1-e25e094e27de
2007-01-12 21:14:36 +00:00
Jeremy Kemper
c302cdfcc4 Fix scope typo in add_lock! Closes #6482. [zubek]
git-svn-id: http://svn-commit.rubyonrails.org/rails/trunk@5907 5ecf4fe2-1ee6-0310-87b1-e25e094e27de
2007-01-12 10:18:11 +00:00
Jeremy Kemper
28767075f4 Pass a range in :conditions to use the SQL BETWEEN operator. Closes #6974.
git-svn-id: http://svn-commit.rubyonrails.org/rails/trunk@5876 5ecf4fe2-1ee6-0310-87b1-e25e094e27de
2007-01-10 10:13:18 +00:00
Jamis Buck
6a5388b654 try to appease the angry Oracle
git-svn-id: http://svn-commit.rubyonrails.org/rails/trunk@5808 5ecf4fe2-1ee6-0310-87b1-e25e094e27de
2006-12-29 19:05:53 +00:00
Jamis Buck
0bfabaa048 make sure query attributes on custom fields works as it used to
git-svn-id: http://svn-commit.rubyonrails.org/rails/trunk@5807 5ecf4fe2-1ee6-0310-87b1-e25e094e27de
2006-12-29 17:24:35 +00:00
Michael Koziarski
3b4450bb80 Docs fix for columns_hash [bradediger]
git-svn-id: http://svn-commit.rubyonrails.org/rails/trunk@5797 5ecf4fe2-1ee6-0310-87b1-e25e094e27de
2006-12-27 20:41:55 +00:00
Michael Koziarski
58edaaad0b Ensure dynamic finders are anchored to the beginning of the method name to prevent
git-svn-id: http://svn-commit.rubyonrails.org/rails/trunk@5795 5ecf4fe2-1ee6-0310-87b1-e25e094e27de
2006-12-27 20:35:19 +00:00
Jeremy Kemper
7277c51891 Partially revert [5660] - makes more trouble than it resolves. References #5704, closes #6766.
git-svn-id: http://svn-commit.rubyonrails.org/rails/trunk@5753 5ecf4fe2-1ee6-0310-87b1-e25e094e27de
2006-12-19 19:47:21 +00:00
Jeremy Kemper
8732ce291b Subclass instantiation doesn't try to explicitly require the corresponding subclass. Closes #6840.
git-svn-id: http://svn-commit.rubyonrails.org/rails/trunk@5751 5ecf4fe2-1ee6-0310-87b1-e25e094e27de
2006-12-19 19:23:56 +00:00
Jeremy Kemper
8ffb22056c Subclasses of an abstract class work with single-table inheritance. Closes #5704.
git-svn-id: http://svn-commit.rubyonrails.org/rails/trunk@5660 5ecf4fe2-1ee6-0310-87b1-e25e094e27de
2006-12-01 21:24:47 +00:00
Jeremy Kemper
427fb035a3 Simplify query_attribute by typecasting the attribute value and checking whether it's nil, false, zero or blank. Closes #6659.
git-svn-id: http://svn-commit.rubyonrails.org/rails/trunk@5593 5ecf4fe2-1ee6-0310-87b1-e25e094e27de
2006-11-20 11:22:38 +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
Jamis Buck
57a3e44052 make add_order a tad faster (Closes #6567)
git-svn-id: http://svn-commit.rubyonrails.org/rails/trunk@5452 5ecf4fe2-1ee6-0310-87b1-e25e094e27de
2006-11-07 19:06:35 +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
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
Jamis Buck
e5684a2877 update deprecations to include alternative methods (where available)
git-svn-id: http://svn-commit.rubyonrails.org/rails/trunk@5359 5ecf4fe2-1ee6-0310-87b1-e25e094e27de
2006-10-24 17:25:30 +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
Jamis Buck
b8ff69fcdd callbacks that return false should cause save to return false
git-svn-id: http://svn-commit.rubyonrails.org/rails/trunk@5226 5ecf4fe2-1ee6-0310-87b1-e25e094e27de
2006-10-04 15:43:31 +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
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
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
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
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
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
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
Rick Olson
69266a063b Remove ActiveRecord::Base.reset since Dispatcher doesn't use it anymore. [Rick Olson]
git-svn-id: http://svn-commit.rubyonrails.org/rails/trunk@4743 5ecf4fe2-1ee6-0310-87b1-e25e094e27de
2006-08-09 16:54:36 +00:00
Marcel Molina
d3cf2a6689 Document find's :from option. Closes #5762. [andrew@redlinesoftware.com]
git-svn-id: http://svn-commit.rubyonrails.org/rails/trunk@4739 5ecf4fe2-1ee6-0310-87b1-e25e094e27de
2006-08-09 15:11:18 +00:00
Nicholas Seckar
74165eb6ac New dependencies implementation
git-svn-id: http://svn-commit.rubyonrails.org/rails/trunk@4728 5ecf4fe2-1ee6-0310-87b1-e25e094e27de
2006-08-08 21:21:04 +00:00
Rick Olson
e8f0b1ddd9 Refactor ActiveRecord::Base.reset_subclasses to #reset, and add global observer resetting. [Rick Olson]
git-svn-id: http://svn-commit.rubyonrails.org/rails/trunk@4683 5ecf4fe2-1ee6-0310-87b1-e25e094e27de
2006-08-06 02:08:29 +00:00