Jeremy Kemper
990a3f3a83
Use rexml for some tests rather than string include? checks to account for unordered attributes. Closes #10164 [Catfish]
...
git-svn-id: http://svn-commit.rubyonrails.org/rails/trunk@8142 5ecf4fe2-1ee6-0310-87b1-e25e094e27de
2007-11-14 18:59:05 +00:00
Jeremy Kemper
ea256eaa7f
Base#to_xml supports the nil="true" attribute like Hash#to_xml. Closes #8268 .
...
git-svn-id: http://svn-commit.rubyonrails.org/rails/trunk@8138 5ecf4fe2-1ee6-0310-87b1-e25e094e27de
2007-11-14 10:33:25 +00:00
David Heinemeier Hansson
b318134c99
Kill the whiny_protected_attributes setting and kill the exception raised. Instead, just log the mass-assignment misalignment as a debug warning ( closes #9966 )
...
git-svn-id: http://svn-commit.rubyonrails.org/rails/trunk@8120 5ecf4fe2-1ee6-0310-87b1-e25e094e27de
2007-11-09 19:57:24 +00:00
Jeremy Kemper
2fac5d1a8b
SQL Server: test for affected row count. References #9558 [lawrence, ryepup]
...
git-svn-id: http://svn-commit.rubyonrails.org/rails/trunk@7968 5ecf4fe2-1ee6-0310-87b1-e25e094e27de
2007-10-18 23:47:59 +00:00
Michael Koziarski
3122d321fd
Make sure AR::Base#clone handles attr changes made in after_initialize hooks. Closes #7191 [weyus]
...
git-svn-id: http://svn-commit.rubyonrails.org/rails/trunk@7802 5ecf4fe2-1ee6-0310-87b1-e25e094e27de
2007-10-08 06:21:38 +00:00
Jeremy Kemper
84a14f2620
Raise ProtectedAttributeAssignmentError in development and test environments when mass-assigning to an attr_protected attribute. Closes #9699 .
...
git-svn-id: http://svn-commit.rubyonrails.org/rails/trunk@7777 5ecf4fe2-1ee6-0310-87b1-e25e094e27de
2007-10-07 19:43:19 +00:00
Michael Koziarski
638505b90f
Send the correct INSERT statement when dealing with objects with only primary keys. Closes #9523 [tarmo]
...
git-svn-id: http://svn-commit.rubyonrails.org/rails/trunk@7753 5ecf4fe2-1ee6-0310-87b1-e25e094e27de
2007-10-06 00:49:58 +00:00
Rick Olson
66d05f5e2c
Add attr_readonly to specify columns that are skipped during a normal ActiveRecord #save operation. Closes #6896 [dcmanges]
...
git-svn-id: http://svn-commit.rubyonrails.org/rails/trunk@7693 5ecf4fe2-1ee6-0310-87b1-e25e094e27de
2007-09-30 07:09:44 +00:00
David Heinemeier Hansson
e3b49c052b
Fixed spelling errors ( closes #9706 ) [tarmo/rmm5t]
...
git-svn-id: http://svn-commit.rubyonrails.org/rails/trunk@7666 5ecf4fe2-1ee6-0310-87b1-e25e094e27de
2007-09-28 14:18:47 +00:00
Michael Koziarski
acbec3e565
Ensure that custom mutators aren't redefined by define_attribute_methods. [Koz]
...
git-svn-id: http://svn-commit.rubyonrails.org/rails/trunk@7500 5ecf4fe2-1ee6-0310-87b1-e25e094e27de
2007-09-17 09:29:02 +00:00
Michael Koziarski
45ea329bcd
Remove commented out test which refers to old code, old bugs and uses ObjectSpace in a nasty way. [nzkoz]
...
git-svn-id: http://svn-commit.rubyonrails.org/rails/trunk@7371 5ecf4fe2-1ee6-0310-87b1-e25e094e27de
2007-08-29 03:33:26 +00:00
Michael Koziarski
5b801b5960
Change the implementation of ActiveRecord's attribute reader and writer methods:
...
* Generate Reader and Writer methods which cache attribute values in hashes. This is to avoid repeatedly parsing the same date or integer columns.
* Move the attribute related methods out to attribute_methods.rb to de-clutter base.rb
* Change exception raised when users use find with :select then try to access a skipped column. Plugins could override missing_attribute() to lazily load the columns.
* Move method definition to the class, instead of the instance
* Always generate the readers, writers and predicate methods.
git-svn-id: http://svn-commit.rubyonrails.org/rails/trunk@7315 5ecf4fe2-1ee6-0310-87b1-e25e094e27de
2007-08-14 08:53:02 +00:00
Michael Koziarski
bb94ce92fc
Let inspect on AR classes work when the table doesn't exist. Closes #9194 [tarmo, nzkoz]
...
git-svn-id: http://svn-commit.rubyonrails.org/rails/trunk@7278 5ecf4fe2-1ee6-0310-87b1-e25e094e27de
2007-08-06 00:18:50 +00:00
Rick Olson
872c5f4380
Remove deprecated count(conditions=nil, joins=nil) usage. Closes #8993 [lifofifo]
...
git-svn-id: http://svn-commit.rubyonrails.org/rails/trunk@7189 5ecf4fe2-1ee6-0310-87b1-e25e094e27de
2007-07-16 20:26:10 +00:00
Tobias Lütke
817d5d489d
Add the type="array" moniker to has_many / has_and_belongs_to_many associations upon serialization.
...
git-svn-id: http://svn-commit.rubyonrails.org/rails/trunk@7144 5ecf4fe2-1ee6-0310-87b1-e25e094e27de
2007-06-27 16:37:40 +00:00
Jeremy Kemper
813e8ba93b
Fix Base#inspect when not every attribute is present. Closes #8623 .
...
git-svn-id: http://svn-commit.rubyonrails.org/rails/trunk@6995 5ecf4fe2-1ee6-0310-87b1-e25e094e27de
2007-06-11 05:02:42 +00:00
Jeremy Kemper
d0360a4d5c
Base.inspect handles Base itself and abstract_class? Don't use #<Foo ...> since that notation's typically used for instances of a class, not the class itself. Closes #8490 [deepblue]
...
git-svn-id: http://svn-commit.rubyonrails.org/rails/trunk@6913 5ecf4fe2-1ee6-0310-87b1-e25e094e27de
2007-05-31 17:31:33 +00:00
Jeremy Kemper
af98d883b9
Raise an exception if both attr_protected and attr_accessible are declared. Closes #8507 , #6004 .
...
git-svn-id: http://svn-commit.rubyonrails.org/rails/trunk@6896 5ecf4fe2-1ee6-0310-87b1-e25e094e27de
2007-05-29 20:35:46 +00:00
Rick Olson
4472a30aad
Allow nil serialized attributes with a set class constraint. #7293 [sandofsky]
...
git-svn-id: http://svn-commit.rubyonrails.org/rails/trunk@6879 5ecf4fe2-1ee6-0310-87b1-e25e094e27de
2007-05-28 15:51:53 +00:00
Jeremy Kemper
79212def83
Test that #to_xml takes a block. Closes #8471 . [seth]
...
git-svn-id: http://svn-commit.rubyonrails.org/rails/trunk@6847 5ecf4fe2-1ee6-0310-87b1-e25e094e27de
2007-05-25 23:04:45 +00:00
Jeremy Kemper
a995b9cde0
Fix #inspect for new records. Closes #8405 .
...
git-svn-id: http://svn-commit.rubyonrails.org/rails/trunk@6782 5ecf4fe2-1ee6-0310-87b1-e25e094e27de
2007-05-19 01:35:19 +00:00
Jeremy Kemper
4d753adeaf
Pay tribute to timezones. Tune #inspect style.
...
git-svn-id: http://svn-commit.rubyonrails.org/rails/trunk@6766 5ecf4fe2-1ee6-0310-87b1-e25e094e27de
2007-05-18 07:24:03 +00:00
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
Jeremy Kemper
27ba5edef1
Hash#to_xml supports YAML attributes; ActiveRecord::Base#to_xml support serialized attributes. Closes #7502 .
...
git-svn-id: http://svn-commit.rubyonrails.org/rails/trunk@6444 5ecf4fe2-1ee6-0310-87b1-e25e094e27de
2007-03-18 07:30:09 +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
7b9824f6e2
Oracle: overflow Time to DateTime. Closes #7718 .
...
git-svn-id: http://svn-commit.rubyonrails.org/rails/trunk@6348 5ecf4fe2-1ee6-0310-87b1-e25e094e27de
2007-03-06 09:39:50 +00:00
Jeremy Kemper
16f6bd4070
SQLServer: don't choke on strings containing 'null'. Closes #7083 .
...
git-svn-id: http://svn-commit.rubyonrails.org/rails/trunk@6084 5ecf4fe2-1ee6-0310-87b1-e25e094e27de
2007-01-28 17:51:21 +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
Michael Koziarski
71a4f7161f
Allow the Oracle adapter to insert a string "null". Closes #6997 [laurelfan]
...
git-svn-id: http://svn-commit.rubyonrails.org/rails/trunk@5958 5ecf4fe2-1ee6-0310-87b1-e25e094e27de
2007-01-16 01:39:05 +00:00
Michael Koziarski
84481dd3b4
Sybase adapter fixes. Closes #6926 [jsheets]
...
git-svn-id: http://svn-commit.rubyonrails.org/rails/trunk@5839 5ecf4fe2-1ee6-0310-87b1-e25e094e27de
2007-01-05 00:12:06 +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
Jeremy Kemper
4cf8bf7312
Pushing a record on an association collection doesn't unnecessarily load all the associated records.
...
git-svn-id: http://svn-commit.rubyonrails.org/rails/trunk@5769 5ecf4fe2-1ee6-0310-87b1-e25e094e27de
2006-12-21 23:28:12 +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
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
9104d63f99
Quote ActiveSupport::Multibyte::Chars. Closes #6653 .
...
git-svn-id: http://svn-commit.rubyonrails.org/rails/trunk@5597 5ecf4fe2-1ee6-0310-87b1-e25e094e27de
2006-11-20 12:02:04 +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
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
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
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
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
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
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
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
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
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