Commit Graph

395 Commits

Author SHA1 Message Date
David Heinemeier Hansson
01b1a87729 Added reusable reloading support through the inclusion of the Relodable module that all subclasses of ActiveRecord::Base, ActiveRecord::Observer, ActiveController::Base, and ActionMailer::Base automatically gets [DHH]. Added auto-loading support for classes in modules, so Conductor::Migration will look for conductor/migration.rb and Conductor::Database::Settings will look for conductor/database/settings.rb [Nicholas Seckar]. Refactored extensions to module, class, and object in active support [DHH]
git-svn-id: http://svn-commit.rubyonrails.org/rails/trunk@3493 5ecf4fe2-1ee6-0310-87b1-e25e094e27de
2006-01-29 00:37:39 +00:00
David Heinemeier Hansson
c3cfc2636b AR should run schema.rb for tests when building test DBs (closes #3578) [Rick Olson]
git-svn-id: http://svn-commit.rubyonrails.org/rails/trunk@3466 5ecf4fe2-1ee6-0310-87b1-e25e094e27de
2006-01-23 05:29:17 +00:00
Marcel Molina
554aa2e1e9 Add explicit :order in finder tests as postgresql orders results differently by default. Closes #3577.
git-svn-id: http://svn-commit.rubyonrails.org/rails/trunk@3464 5ecf4fe2-1ee6-0310-87b1-e25e094e27de
2006-01-22 20:55:14 +00:00
Marcel Molina
297618bddc Make dynamic finders honor additional passed in :conditions. Closes #3569.
git-svn-id: http://svn-commit.rubyonrails.org/rails/trunk@3463 5ecf4fe2-1ee6-0310-87b1-e25e094e27de
2006-01-22 09:34:41 +00:00
David Heinemeier Hansson
1facce6c24 allow has_many :through to work with custom :foreign key (closes #3422) [Rick Olson]
git-svn-id: http://svn-commit.rubyonrails.org/rails/trunk@3456 5ecf4fe2-1ee6-0310-87b1-e25e094e27de
2006-01-21 23:40:20 +00:00
David Heinemeier Hansson
6a2104d792 Added assert_date_from_db to do cleaner tests for SQL Server (closes #3557) [Tom Ward]
git-svn-id: http://svn-commit.rubyonrails.org/rails/trunk@3452 5ecf4fe2-1ee6-0310-87b1-e25e094e27de
2006-01-21 23:20:00 +00:00
Jamis Buck
f9c13e6134 Add a test to verify correct behavior when creating a polymorphic association
git-svn-id: http://svn-commit.rubyonrails.org/rails/trunk@3440 5ecf4fe2-1ee6-0310-87b1-e25e094e27de
2006-01-20 21:51:48 +00:00
Jamis Buck
d2f47503f8 Add AR::Base.base_class for querying the ancestor AR::Base subclass [Jamis Buck]
git-svn-id: http://svn-commit.rubyonrails.org/rails/trunk@3439 5ecf4fe2-1ee6-0310-87b1-e25e094e27de
2006-01-20 20:43:40 +00:00
Michael Koziarski
a471e6b4d7 allow the 'lock_version' column to be configured with set_locking_column. Closes #3402
git-svn-id: http://svn-commit.rubyonrails.org/rails/trunk@3422 5ecf4fe2-1ee6-0310-87b1-e25e094e27de
2006-01-14 09:36:52 +00:00
Michael Koziarski
6258829ebf Fix test error caused by operator error with last commit
git-svn-id: http://svn-commit.rubyonrails.org/rails/trunk@3418 5ecf4fe2-1ee6-0310-87b1-e25e094e27de
2006-01-14 08:43:27 +00:00
Michael Koziarski
f41feb349c Don't alter the Hash passed to attributes=, closes #3385
git-svn-id: http://svn-commit.rubyonrails.org/rails/trunk@3417 5ecf4fe2-1ee6-0310-87b1-e25e094e27de
2006-01-14 08:26:20 +00:00
Marcel Molina
b98684c3e1 Fix date errors for SQLServer in association tests. Closes #3406.
git-svn-id: http://svn-commit.rubyonrails.org/rails/trunk@3404 5ecf4fe2-1ee6-0310-87b1-e25e094e27de
2006-01-13 02:04:34 +00:00
Marcel Molina
945dd920ab Don't raise an exception when there are more keys than there are named bind variables when sanitizing conditions.
git-svn-id: http://svn-commit.rubyonrails.org/rails/trunk@3382 5ecf4fe2-1ee6-0310-87b1-e25e094e27de
2006-01-05 21:40:15 +00:00
Marcel Molina
a5708b4c1f Multiple enhancements and adjustments to DB2 adaptor. Closes #3377.
git-svn-id: http://svn-commit.rubyonrails.org/rails/trunk@3380 5ecf4fe2-1ee6-0310-87b1-e25e094e27de
2006-01-04 04:17:23 +00:00
Marcel Molina
bbec3ae512 Sanitize scoped conditions.
git-svn-id: http://svn-commit.rubyonrails.org/rails/trunk@3379 5ecf4fe2-1ee6-0310-87b1-e25e094e27de
2006-01-04 03:43:28 +00:00
David Heinemeier Hansson
d7487fffe5 Made Field.focus in prototype friendly to effects by adding optional delay parameter [DHH]
git-svn-id: http://svn-commit.rubyonrails.org/rails/trunk@3366 5ecf4fe2-1ee6-0310-87b1-e25e094e27de
2005-12-31 04:14:07 +00:00
David Heinemeier Hansson
b5ba377b78 Added option to Base.reflection_of_all_associations to specify a specific association to scope the call. For example Base.reflection_of_all_associations(:has_many) [DHH]
git-svn-id: http://svn-commit.rubyonrails.org/rails/trunk@3357 5ecf4fe2-1ee6-0310-87b1-e25e094e27de
2005-12-27 05:41:23 +00:00
Tobias Lütke
d4e02f755d ActiveRecord::Base.schema_ignore_tables => ActiveRecord::SchemaDumper.ignore_tables
git-svn-id: http://svn-commit.rubyonrails.org/rails/trunk@3347 5ecf4fe2-1ee6-0310-87b1-e25e094e27de
2005-12-24 17:31:26 +00:00
Tobias Lütke
87535f50e9 SchemaDumper now doesn't fail anymore when there are unknown column types in the schema. Instead the table is ignored and a Comment is left in the schema.rb also added ActiveRecord::Base.schema_ignore_tables for dealing with funky tables like the tesearch2 ones.
git-svn-id: http://svn-commit.rubyonrails.org/rails/trunk@3346 5ecf4fe2-1ee6-0310-87b1-e25e094e27de
2005-12-24 16:55:55 +00:00
Florian Weber
c6e01f5b60 Fixed that saving a model with multiple habtm associations, would only save the first habtm association.
git-svn-id: http://svn-commit.rubyonrails.org/rails/trunk@3331 5ecf4fe2-1ee6-0310-87b1-e25e094e27de
2005-12-21 15:50:31 +00:00
Scott Barron
88bb279df7 Fix change_column to work with postgres 7.x and 8.x.
Closes #3141


git-svn-id: http://svn-commit.rubyonrails.org/rails/trunk@3327 5ecf4fe2-1ee6-0310-87b1-e25e094e27de
2005-12-20 21:43:47 +00:00
Tobias Lütke
581f12b7b1 removed :piggyback in favor of just allowing :select on :through associations
git-svn-id: http://svn-commit.rubyonrails.org/rails/trunk@3326 5ecf4fe2-1ee6-0310-87b1-e25e094e27de
2005-12-20 21:26:27 +00:00
Tobias Lütke
90099e9dc2 made .find() and class method delegation work on :through relations
git-svn-id: http://svn-commit.rubyonrails.org/rails/trunk@3325 5ecf4fe2-1ee6-0310-87b1-e25e094e27de
2005-12-20 21:20:35 +00:00
Tobias Lütke
1d2c6ee8f3 added :piggyback option to has_many :through relationships to pick up values from the join table as needed
git-svn-id: http://svn-commit.rubyonrails.org/rails/trunk@3323 5ecf4fe2-1ee6-0310-87b1-e25e094e27de
2005-12-20 20:32:47 +00:00
Tobias Lütke
5f06c483ca Fixed :through relations when using STI inherited classes would use the inherited class's name as foreign key on the join model
git-svn-id: http://svn-commit.rubyonrails.org/rails/trunk@3315 5ecf4fe2-1ee6-0310-87b1-e25e094e27de
2005-12-16 23:24:58 +00:00
David Heinemeier Hansson
e5d9ad3e29 Added option inheritance for find calls on has_and_belongs_to_many and has_many assosociations [DHH] Added option to specify :group, :limit, :offset, and :select options from find on has_and_belongs_to_many and has_many assosociations [DHH]
Added form_remote_for (form_for meets form_remote_tag) [DHH]

git-svn-id: http://svn-commit.rubyonrails.org/rails/trunk@3287 5ecf4fe2-1ee6-0310-87b1-e25e094e27de
2005-12-13 00:39:51 +00:00
David Heinemeier Hansson
6427db6baa Added tests for join models and fixed a bug #3177
git-svn-id: http://svn-commit.rubyonrails.org/rails/trunk@3279 5ecf4fe2-1ee6-0310-87b1-e25e094e27de
2005-12-11 18:06:51 +00:00
Jeremy Kemper
dc106b932c Fix some test failures due to MySQL assumptions. Closes #3149.
git-svn-id: http://svn-commit.rubyonrails.org/rails/trunk@3254 5ecf4fe2-1ee6-0310-87b1-e25e094e27de
2005-12-08 23:23:34 +00:00
Jeremy Kemper
d496db1388 Reloading an instance refreshes its aggregations as well as its associations. References #3024.
git-svn-id: http://svn-commit.rubyonrails.org/rails/trunk@3242 5ecf4fe2-1ee6-0310-87b1-e25e094e27de
2005-12-08 04:46:57 +00:00
David Heinemeier Hansson
e466fc45ca Fixed that using :include together with :conditions array in Base.find would cause NoMethodError (closes #2887) [Paul Hammmond]
git-svn-id: http://svn-commit.rubyonrails.org/rails/trunk@3240 5ecf4fe2-1ee6-0310-87b1-e25e094e27de
2005-12-08 04:44:54 +00:00
Jeremy Kemper
c1537e89f8 PostgreSQL: more robust sequence name discovery. References #3087.
git-svn-id: http://svn-commit.rubyonrails.org/rails/trunk@3235 5ecf4fe2-1ee6-0310-87b1-e25e094e27de
2005-12-08 04:34:26 +00:00
Jeremy Kemper
1dfa0bd372 Don't use transactional fixtures for when DDL changes are involved.
git-svn-id: http://svn-commit.rubyonrails.org/rails/trunk@3217 5ecf4fe2-1ee6-0310-87b1-e25e094e27de
2005-12-04 05:40:50 +00:00
David Heinemeier Hansson
6abda696b5 Added preliminary support for join models [DHH] Added preliminary support for polymorphic associations [DHH] Refactored associations to use reflections to get DRYer, beware, major refactoring -- double check before deploying anything with this (all tests pass, but..)
git-svn-id: http://svn-commit.rubyonrails.org/rails/trunk@3213 5ecf4fe2-1ee6-0310-87b1-e25e094e27de
2005-12-03 04:29:55 +00:00
David Heinemeier Hansson
57b7532b91 Work-in progress for providing better join model support and polymorphic associations
git-svn-id: http://svn-commit.rubyonrails.org/rails/trunk@3209 5ecf4fe2-1ee6-0310-87b1-e25e094e27de
2005-12-02 06:03:43 +00:00
Marcel Molina
2e42167058 Allow validate_uniqueness_of to be scoped by more than just one column. Closes #1559.
git-svn-id: http://svn-commit.rubyonrails.org/rails/trunk@3206 5ecf4fe2-1ee6-0310-87b1-e25e094e27de
2005-12-02 04:30:46 +00:00
Florian Weber
1f951bbf9f Made test_update_attributes_after_push_without_duplicate_join_table_rows pass with Oracle Adapter. #2888
git-svn-id: http://svn-commit.rubyonrails.org/rails/trunk@3186 5ecf4fe2-1ee6-0310-87b1-e25e094e27de
2005-11-24 12:45:33 +00:00
Jeremy Kemper
2b28575734 Reloading a model doesn't lose track of its connection. References #2996.
git-svn-id: http://svn-commit.rubyonrails.org/rails/trunk@3182 5ecf4fe2-1ee6-0310-87b1-e25e094e27de
2005-11-24 07:01:43 +00:00
Florian Weber
c66ac2102b Fixed bug where using update_attribute after pushing a record to a habtm association of the object caused duplicate rows in the join table. #2888
git-svn-id: http://svn-commit.rubyonrails.org/rails/trunk@3167 5ecf4fe2-1ee6-0310-87b1-e25e094e27de
2005-11-23 21:03:25 +00:00
Jeremy Kemper
77e0b7986e Use query methods rather than readers in boolean tests for [3092]. References #2945. Closes #2949.
git-svn-id: http://svn-commit.rubyonrails.org/rails/trunk@3094 5ecf4fe2-1ee6-0310-87b1-e25e094e27de
2005-11-19 10:00:14 +00:00
Jeremy Kemper
2ed6d365bb Correct boolean handling in generated reader methods. References #2945.
git-svn-id: http://svn-commit.rubyonrails.org/rails/trunk@3092 5ecf4fe2-1ee6-0310-87b1-e25e094e27de
2005-11-19 09:53:36 +00:00
Jeremy Kemper
b51c3399eb Don't generate read methods for columns whose names are not valid ruby method names. References #2946.
git-svn-id: http://svn-commit.rubyonrails.org/rails/trunk@3089 5ecf4fe2-1ee6-0310-87b1-e25e094e27de
2005-11-19 06:47:26 +00:00
Jeremy Kemper
9cb02c5317 r3116@asus: jeremy | 2005-11-16 00:17:06 -0800
Introducing the Firebird adapter.  Closes #1874.


git-svn-id: http://svn-commit.rubyonrails.org/rails/trunk@3052 5ecf4fe2-1ee6-0310-87b1-e25e094e27de
2005-11-16 08:18:13 +00:00
Jeremy Kemper
2076dca63f r3095@asus: jeremy | 2005-11-15 22:40:51 -0800
Ticket #1874 - Firebird adapter
 r3107@asus:  jeremy | 2005-11-16 00:06:14 -0800
 quote column aliases
 r3108@asus:  jeremy | 2005-11-16 00:08:12 -0800
 quote columns in construct_conditions_from_arguments.  update sequence_name docs.  introduce prefetched primary keys.
 r3109@asus:  jeremy | 2005-11-16 00:09:08 -0800
 double-quote rather than single-quote sqlite columns
 r3110@asus:  jeremy | 2005-11-16 00:09:56 -0800
 quote column names and use attribute_condition in validates_uniqueness_of
 r3111@asus:  jeremy | 2005-11-16 00:12:24 -0800
 Use QUOTED_TYPE constant in tests
 r3112@asus:  jeremy | 2005-11-16 00:13:28 -0800
 restrict test_inserts_with_pre_and_suffix to those adapters which support migrations
 r3113@asus:  jeremy | 2005-11-16 00:14:09 -0800
 Use QUOTED_TYPE constant in tests
 r3114@asus:  jeremy | 2005-11-16 00:14:30 -0800
 Use QUOTED_TYPE constant in tests


git-svn-id: http://svn-commit.rubyonrails.org/rails/trunk@3051 5ecf4fe2-1ee6-0310-87b1-e25e094e27de
2005-11-16 08:16:54 +00:00
Jeremy Kemper
3441dfdb12 Associations handle case-equality more consistently: item.parts.is_a?(Array) and item.parts === Array. Closes #1345.
git-svn-id: http://svn-commit.rubyonrails.org/rails/trunk@3043 5ecf4fe2-1ee6-0310-87b1-e25e094e27de
2005-11-15 10:48:32 +00:00
Jeremy Kemper
fb1efcaf91 SQLServer: insert uses given primary key value if not nil rather than SELECT @@IDENTITY. References #2866.
git-svn-id: http://svn-commit.rubyonrails.org/rails/trunk@3035 5ecf4fe2-1ee6-0310-87b1-e25e094e27de
2005-11-14 22:24:55 +00:00
Jeremy Kemper
d28e9aef5f Oracle: test case for column default parsing. References #2788.
git-svn-id: http://svn-commit.rubyonrails.org/rails/trunk@3019 5ecf4fe2-1ee6-0310-87b1-e25e094e27de
2005-11-14 04:51:54 +00:00
Jeremy Kemper
54dfb29151 PostgreSQL: min_messages = warning for AR tests.
git-svn-id: http://svn-commit.rubyonrails.org/rails/trunk@2989 5ecf4fe2-1ee6-0310-87b1-e25e094e27de
2005-11-12 22:28:38 +00:00
Jeremy Kemper
7c8f3edc99 r4325@asus: jeremy | 2005-11-12 03:57:46 -0800
PostgreSQL: correctly discover custom primary key sequences.  PostgreSQL: smarter sequence name defaults, stricter last_insert_id, warn on pk without sequence.  Base.reset_sequence_name analogous to reset_table_name (mostly useful for testing).  Base.define_attr_method allows nil values.  References #2594.


git-svn-id: http://svn-commit.rubyonrails.org/rails/trunk@2985 5ecf4fe2-1ee6-0310-87b1-e25e094e27de
2005-11-12 11:59:54 +00:00
Jeremy Kemper
3309268120 Add :group option, correspond to GROUP BY, to the find method and to the has_many association. Closes #2818.
git-svn-id: http://svn-commit.rubyonrails.org/rails/trunk@2974 5ecf4fe2-1ee6-0310-87b1-e25e094e27de
2005-11-10 16:36:01 +00:00
Jeremy Kemper
c91088cd13 Expand tabs and strip trailing whitespace.
git-svn-id: http://svn-commit.rubyonrails.org/rails/trunk@2965 5ecf4fe2-1ee6-0310-87b1-e25e094e27de
2005-11-10 06:24:33 +00:00