Commit Graph

1505 Commits

Author SHA1 Message Date
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
50be89b609 Shorten index name.
git-svn-id: http://svn-commit.rubyonrails.org/rails/trunk@4777 5ecf4fe2-1ee6-0310-87b1-e25e094e27de
2006-08-16 18:22:51 +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
Jeremy Kemper
d7f780e066 Fix for deep includes on the same association.
git-svn-id: http://svn-commit.rubyonrails.org/rails/trunk@4758 5ecf4fe2-1ee6-0310-87b1-e25e094e27de
2006-08-14 07:19:47 +00:00
Nicholas Seckar
33406747d8 Use require_dependency and not require to load models
git-svn-id: http://svn-commit.rubyonrails.org/rails/trunk@4753 5ecf4fe2-1ee6-0310-87b1-e25e094e27de
2006-08-12 19:29:46 +00:00
Rick Olson
02021d89b1 Tweak fixtures so they don't try to use a non-ActiveRecord class. [Kevin Clark]
git-svn-id: http://svn-commit.rubyonrails.org/rails/trunk@4752 5ecf4fe2-1ee6-0310-87b1-e25e094e27de
2006-08-11 23:38:46 +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
Jeremy Kemper
d568fb6137 PostgreSQL: autodetected sequences work correctly with multiple schemas. Rely on the schema search_path instead of explicitly qualifying the sequence name with its schema. Closes #5280.
git-svn-id: http://svn-commit.rubyonrails.org/rails/trunk@4737 5ecf4fe2-1ee6-0310-87b1-e25e094e27de
2006-08-09 03:25:39 +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
94a1309194 Cache nil results for has_one associations so multiple calls don't call the database. Closes #5757. [Michael A. Schoen]
git-svn-id: http://svn-commit.rubyonrails.org/rails/trunk@4721 5ecf4fe2-1ee6-0310-87b1-e25e094e27de
2006-08-08 16:59:06 +00:00
Marcel Molina
883c54a317 Add documentation for how to disable timestamps on a per model basis. Closes #5684. [matt@mattmargolis.net Marcel Molina Jr.]
git-svn-id: http://svn-commit.rubyonrails.org/rails/trunk@4706 5ecf4fe2-1ee6-0310-87b1-e25e094e27de
2006-08-07 06:54:22 +00:00
Jeremy Kemper
35670bbde5 Don't save has_one associations unnecessarily. Closes #5735.
git-svn-id: http://svn-commit.rubyonrails.org/rails/trunk@4690 5ecf4fe2-1ee6-0310-87b1-e25e094e27de
2006-08-06 19:23:40 +00:00
Rick Olson
000a8ed9c6 fixed lifecycle tests so they instantiate the observers
git-svn-id: http://svn-commit.rubyonrails.org/rails/trunk@4685 5ecf4fe2-1ee6-0310-87b1-e25e094e27de
2006-08-06 02:40:24 +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
Michael Koziarski
a7f1586404 Formally deprecate the deprecated finders. [Koz]
git-svn-id: http://svn-commit.rubyonrails.org/rails/trunk@4682 5ecf4fe2-1ee6-0310-87b1-e25e094e27de
2006-08-05 23:00:34 +00:00
Michael Koziarski
6ba4f4c524 Formally deprecate rich associations. [Koz]
git-svn-id: http://svn-commit.rubyonrails.org/rails/trunk@4680 5ecf4fe2-1ee6-0310-87b1-e25e094e27de
2006-08-05 22:35:58 +00:00
David Heinemeier Hansson
5779deb88d Refactored select routing for SQL Server adapter (closes #5683) [tom@popdog.net]
git-svn-id: http://svn-commit.rubyonrails.org/rails/trunk@4671 5ecf4fe2-1ee6-0310-87b1-e25e094e27de
2006-08-05 21:18:12 +00:00
David Heinemeier Hansson
c99df461f4 Fixed that default timezones for new / initialize should uphold utc setting (closes #5709) [daniluk@yahoo.com]
git-svn-id: http://svn-commit.rubyonrails.org/rails/trunk@4670 5ecf4fe2-1ee6-0310-87b1-e25e094e27de
2006-08-05 20:50:26 +00:00
Jeremy Kemper
604eb8ab95 Fix announcement of very long migration names. Closes #5722.
git-svn-id: http://svn-commit.rubyonrails.org/rails/trunk@4663 5ecf4fe2-1ee6-0310-87b1-e25e094e27de
2006-08-05 01:39:57 +00:00
Jeremy Kemper
58ebf302b2 The exists? class method should treat a string argument as an id rather than as conditions. Closes #5698.
git-svn-id: http://svn-commit.rubyonrails.org/rails/trunk@4655 5ecf4fe2-1ee6-0310-87b1-e25e094e27de
2006-08-03 22:06:33 +00:00
David Heinemeier Hansson
b5c2366569 Fixed to_xml with :include misbehaviors when invoked on array of model instances (closes #5690) [alexkwolfe@gmail.com]
git-svn-id: http://svn-commit.rubyonrails.org/rails/trunk@4652 5ecf4fe2-1ee6-0310-87b1-e25e094e27de
2006-08-03 17:19:45 +00:00
David Heinemeier Hansson
8085cbfd08 Added support for conditions on Base.exists? (closes #5689) [josh@joshpeek.com]
git-svn-id: http://svn-commit.rubyonrails.org/rails/trunk@4651 5ecf4fe2-1ee6-0310-87b1-e25e094e27de
2006-08-03 17:16:43 +00:00
Jeremy Kemper
29ae3e9098 Schema dumper quotes date :default values.
git-svn-id: http://svn-commit.rubyonrails.org/rails/trunk@4650 5ecf4fe2-1ee6-0310-87b1-e25e094e27de
2006-08-02 20:20:38 +00:00
Jeremy Kemper
4f017bb1b0 more concise destroy test
git-svn-id: http://svn-commit.rubyonrails.org/rails/trunk@4646 5ecf4fe2-1ee6-0310-87b1-e25e094e27de
2006-08-01 07:33:17 +00:00
Jeremy Kemper
9ee5d54e4d r4889@ks: jeremy | 2006-07-31 20:27:15 -0700
Create and update return the new pk and the number of affected rows, respectively. The job of returning true to appease the validations chain is up to create_or_update.


git-svn-id: http://svn-commit.rubyonrails.org/rails/trunk@4645 5ecf4fe2-1ee6-0310-87b1-e25e094e27de
2006-08-01 03:35:04 +00:00
Rick Olson
ab0277f220 Calculate sum with SQL, not Enumerable on HasManyThrough Associations. [Dan Peterson]
git-svn-id: http://svn-commit.rubyonrails.org/rails/trunk@4640 5ecf4fe2-1ee6-0310-87b1-e25e094e27de
2006-07-31 21:06:19 +00:00
Jeremy Kemper
dd664c33b7 r4880@ks: jeremy | 2006-07-30 23:52:59 -0700
Only set method_name = md.pre_match if the pre_match is an attribute. Plays nicely with other ? suffixed attribute methods.
 r4881@ks:  jeremy | 2006-07-30 23:53:37 -0700
 Heavier testing for attribute method suffixes.


git-svn-id: http://svn-commit.rubyonrails.org/rails/trunk@4635 5ecf4fe2-1ee6-0310-87b1-e25e094e27de
2006-07-31 06:54:06 +00:00
Jeremy Kemper
2b3cc2478f r4854@ks: jeremy | 2006-07-30 00:59:18 -0700
Attribute methods
 r4877@ks:  jeremy | 2006-07-30 20:23:53 -0700
 Factor the attribute#{suffix} methods out of method_missing for easier extension.
 r4878@ks:  jeremy | 2006-07-30 20:42:23 -0700
 More specific method naming, declare many attribute method suffixes, set up default suffixes at module include rather than lazily.


git-svn-id: http://svn-commit.rubyonrails.org/rails/trunk@4632 5ecf4fe2-1ee6-0310-87b1-e25e094e27de
2006-07-31 03:43:03 +00:00
Jamis Buck
99e9faeda8 Patch sql injection vulnerability when using integer or float columns.
git-svn-id: http://svn-commit.rubyonrails.org/rails/trunk@4626 5ecf4fe2-1ee6-0310-87b1-e25e094e27de
2006-07-27 18:29:49 +00:00
Jeremy Kemper
89011da0de BigDecimal: schema dumper formatting
git-svn-id: http://svn-commit.rubyonrails.org/rails/trunk@4619 5ecf4fe2-1ee6-0310-87b1-e25e094e27de
2006-07-24 17:14:48 +00:00
Rick Olson
971e03f24e Allow #count through a has_many association to accept :include. [Dan Peterson]
git-svn-id: http://svn-commit.rubyonrails.org/rails/trunk@4618 5ecf4fe2-1ee6-0310-87b1-e25e094e27de
2006-07-24 04:55:16 +00:00
Rick Olson
291adbd361 fix association exception messages, fix them so the error messages actually display
git-svn-id: http://svn-commit.rubyonrails.org/rails/trunk@4615 5ecf4fe2-1ee6-0310-87b1-e25e094e27de
2006-07-20 00:34:09 +00:00
Jeremy Kemper
35f7cc23ba create_table rdoc: suggest :id => false for habtm join tables
git-svn-id: http://svn-commit.rubyonrails.org/rails/trunk@4606 5ecf4fe2-1ee6-0310-87b1-e25e094e27de
2006-07-10 21:08:40 +00:00
Jeremy Kemper
ac68115205 PostgreSQL: return array fields as strings. Closes #4664.
git-svn-id: http://svn-commit.rubyonrails.org/rails/trunk@4605 5ecf4fe2-1ee6-0310-87b1-e25e094e27de
2006-07-10 19:54:21 +00:00
Jeremy Kemper
f0c22d4ad5 occured -> occurred. Closes #5559.
git-svn-id: http://svn-commit.rubyonrails.org/rails/trunk@4604 5ecf4fe2-1ee6-0310-87b1-e25e094e27de
2006-07-10 19:41:59 +00:00
Jeremy Kemper
a72ace1596 Ignore fixtures in test cases if there are no database configurations. References #5497.
git-svn-id: http://svn-commit.rubyonrails.org/rails/trunk@4603 5ecf4fe2-1ee6-0310-87b1-e25e094e27de
2006-07-10 19:31:44 +00:00
Jeremy Kemper
41f3b7ab56 Test connections use AR::Base.configurations. References #5497.
git-svn-id: http://svn-commit.rubyonrails.org/rails/trunk@4602 5ecf4fe2-1ee6-0310-87b1-e25e094e27de
2006-07-10 19:27:04 +00:00
Jeremy Kemper
5ad4f1ad94 SQLServer: added tests to ensure all database statements are closed, refactored identity_insert management code to use blocks, removed update/delete rowcount code out of execute and into update/delete, changed insert to go through execute method, removed unused quoting methods, disabled pessimistic locking tests as feature is currently unsupported, fixed RakeFile to load sqlserver specific tests whether running in ado or odbc mode, fixed support for recently added decimal types, added support for limits on integer types. Closes #5670.
git-svn-id: http://svn-commit.rubyonrails.org/rails/trunk@4601 5ecf4fe2-1ee6-0310-87b1-e25e094e27de
2006-07-10 18:24:35 +00:00
Jeremy Kemper
0293c34459 Oracle: BigDecimal support. Closes #5667.
git-svn-id: http://svn-commit.rubyonrails.org/rails/trunk@4600 5ecf4fe2-1ee6-0310-87b1-e25e094e27de
2006-07-10 18:10:50 +00:00
Jeremy Kemper
2a12b56841 r4704@asus: jeremy | 2006-06-27 12:00:19 -0700
decimal
 r4705@asus:  jeremy | 2006-06-27 12:20:47 -0700
 current_adapter? checks whether any of its arguments is the name of the current adapter class
 r4834@asus:  jeremy | 2006-07-08 13:08:24 -0700
 Room to float.
 r4835@asus:  jeremy | 2006-07-08 13:09:18 -0700
 Give lock test a few chances.
 r4836@asus:  jeremy | 2006-07-08 13:12:05 -0700
 Numeric and decimal columns map to BigDecimal instead of Float. Those with scale 0 map to Integer. Closes #5454.


git-svn-id: http://svn-commit.rubyonrails.org/rails/trunk@4596 5ecf4fe2-1ee6-0310-87b1-e25e094e27de
2006-07-08 20:35:56 +00:00