Commit Graph

250 Commits

Author SHA1 Message Date
Jamis Buck
6d4a4a0d2e Make sqlite adapter pass all tests
git-svn-id: http://svn-commit.rubyonrails.org/rails/trunk@2315 5ecf4fe2-1ee6-0310-87b1-e25e094e27de
2005-09-23 15:00:56 +00:00
Jamis Buck
7dc45818dc Add ActiveRecord::SchemaDumper for dumping a DB schema to a pure-ruby file, making it easier to consolidate large migration lists and port database schemas between databases.
git-svn-id: http://svn-commit.rubyonrails.org/rails/trunk@2312 5ecf4fe2-1ee6-0310-87b1-e25e094e27de
2005-09-23 13:29:33 +00:00
David Heinemeier Hansson
66ecf31ffe Fixed that the create_x method from belongs_to wouldn't save the association properly #2042 [Florian Weber]
git-svn-id: http://svn-commit.rubyonrails.org/rails/trunk@2279 5ecf4fe2-1ee6-0310-87b1-e25e094e27de
2005-09-20 18:36:14 +00:00
Jamis Buck
5213a1f733 Fixed saving a record with two unsaved belongs_to associations pointing to the same object #2023 [Tobias Luetke]
git-svn-id: http://svn-commit.rubyonrails.org/rails/trunk@2278 5ecf4fe2-1ee6-0310-87b1-e25e094e27de
2005-09-20 16:12:13 +00:00
David Heinemeier Hansson
6f95c49a15 Fixed that Observers didn't observe sub-classes #627 [Florian Weber]
git-svn-id: http://svn-commit.rubyonrails.org/rails/trunk@2263 5ecf4fe2-1ee6-0310-87b1-e25e094e27de
2005-09-19 16:34:34 +00:00
Nicholas Seckar
251a5d4508 Fix eager loading error messages, allow :include to specify tables using strings or symbols. Closes #2222
git-svn-id: http://svn-commit.rubyonrails.org/rails/trunk@2258 5ecf4fe2-1ee6-0310-87b1-e25e094e27de
2005-09-18 20:41:44 +00:00
David Heinemeier Hansson
4307d7ecbe Fixed various problems with has_and_belongs_to_many when using customer finder_sql #2094 [Florian Weber]
git-svn-id: http://svn-commit.rubyonrails.org/rails/trunk@2233 5ecf4fe2-1ee6-0310-87b1-e25e094e27de
2005-09-13 10:15:54 +00:00
David Heinemeier Hansson
b646e0ddf7 Rolled back broken #1814
git-svn-id: http://svn-commit.rubyonrails.org/rails/trunk@2203 5ecf4fe2-1ee6-0310-87b1-e25e094e27de
2005-09-11 10:05:46 +00:00
David Heinemeier Hansson
57070277b4 Added better exception error when unknown column types are used with migrations #1814 [fbeausoleil@ftml.net]
git-svn-id: http://svn-commit.rubyonrails.org/rails/trunk@2201 5ecf4fe2-1ee6-0310-87b1-e25e094e27de
2005-09-11 09:41:24 +00:00
David Heinemeier Hansson
1472bf273d Fix tests
git-svn-id: http://svn-commit.rubyonrails.org/rails/trunk@2187 5ecf4fe2-1ee6-0310-87b1-e25e094e27de
2005-09-11 06:25:17 +00:00
David Heinemeier Hansson
4b53e26ef6 Fix fixture problem for pgsql
git-svn-id: http://svn-commit.rubyonrails.org/rails/trunk@2178 5ecf4fe2-1ee6-0310-87b1-e25e094e27de
2005-09-11 04:18:07 +00:00
David Heinemeier Hansson
0faca07056 Fixed comparison of Active Record objects so two new objects are not equal #2099 [deberg]
git-svn-id: http://svn-commit.rubyonrails.org/rails/trunk@2172 5ecf4fe2-1ee6-0310-87b1-e25e094e27de
2005-09-09 08:54:02 +00:00
David Heinemeier Hansson
3004217855 Fixed that the SQL Server adapter would sometimes return DBI::Timestamp objects instead of Time #2127 [Tom Ward]
git-svn-id: http://svn-commit.rubyonrails.org/rails/trunk@2169 5ecf4fe2-1ee6-0310-87b1-e25e094e27de
2005-09-09 08:37:05 +00:00
David Heinemeier Hansson
e5cc729b18 Make the test_find_all_by_one_attribute and test_find_all_by_one_attribute_with_options tests not fail in SQL Server #2128 [Tom Ward]
git-svn-id: http://svn-commit.rubyonrails.org/rails/trunk@2168 5ecf4fe2-1ee6-0310-87b1-e25e094e27de
2005-09-09 08:34:51 +00:00
David Heinemeier Hansson
0439769324 Refactored away all the legacy validate_options calls and replaced them with Hash#assert_valid_keys
git-svn-id: http://svn-commit.rubyonrails.org/rails/trunk@2167 5ecf4fe2-1ee6-0310-87b1-e25e094e27de
2005-09-09 08:32:47 +00:00
David Heinemeier Hansson
b063067321 Added the instance methods #root and #ancestors on acts_as_tree and fixed siblings to not include the current node #2142, #2140 [coffee2code]
git-svn-id: http://svn-commit.rubyonrails.org/rails/trunk@2163 5ecf4fe2-1ee6-0310-87b1-e25e094e27de
2005-09-09 08:01:44 +00:00
Jamis Buck
e3d34286e3 Fixtures ignore table name prefix and suffix #1987 [Jakob S]
git-svn-id: http://svn-commit.rubyonrails.org/rails/trunk@2101 5ecf4fe2-1ee6-0310-87b1-e25e094e27de
2005-09-02 10:51:23 +00:00
Jamis Buck
69d662051e Modify read_attribute to allow a symbol argument #2024 [Ken Kunz]
git-svn-id: http://svn-commit.rubyonrails.org/rails/trunk@2096 5ecf4fe2-1ee6-0310-87b1-e25e094e27de
2005-09-02 08:31:11 +00:00
Jamis Buck
7d65f7cd3d Revert [2040], caused assignment of belongs_to associations to fail in some cases
git-svn-id: http://svn-commit.rubyonrails.org/rails/trunk@2048 5ecf4fe2-1ee6-0310-87b1-e25e094e27de
2005-08-24 16:45:46 +00:00
Jamis Buck
943fde0a55 Add a failing test
git-svn-id: http://svn-commit.rubyonrails.org/rails/trunk@2047 5ecf4fe2-1ee6-0310-87b1-e25e094e27de
2005-08-24 16:25:56 +00:00
Jamis Buck
dfe1aeb776 Saving a record with two unsaved belongs_to associations pointing to the same object fails #2023 [Tobias Luetke]
git-svn-id: http://svn-commit.rubyonrails.org/rails/trunk@2040 5ecf4fe2-1ee6-0310-87b1-e25e094e27de
2005-08-23 11:05:04 +00:00
Jamis Buck
b1a4f91a58 Make destroy return self #1913 [sebastian.kanthak@muehlheim.de]
git-svn-id: http://svn-commit.rubyonrails.org/rails/trunk@2011 5ecf4fe2-1ee6-0310-87b1-e25e094e27de
2005-08-14 08:58:53 +00:00
Jamis Buck
85c603fc9e Make acts_as_list work for insert_at(1) #1966 [hensleyl@papermountain.org]
git-svn-id: http://svn-commit.rubyonrails.org/rails/trunk@2008 5ecf4fe2-1ee6-0310-87b1-e25e094e27de
2005-08-14 08:35:08 +00:00
Jamis Buck
da874a4af8 Allow add_column and create_table to specify NOT NULL #1712 [emptysands@gmail.com]
git-svn-id: http://svn-commit.rubyonrails.org/rails/trunk@1955 5ecf4fe2-1ee6-0310-87b1-e25e094e27de
2005-07-30 10:16:21 +00:00
Jamis Buck
369d054338 Fix create_table so that id column is implicitly added [Rick Olson]
git-svn-id: http://svn-commit.rubyonrails.org/rails/trunk@1949 5ecf4fe2-1ee6-0310-87b1-e25e094e27de
2005-07-27 17:06:22 +00:00
David Heinemeier Hansson
14ea312808 Made Oracle a first-class connection adapter by adhering closer to idiomatic Oracle style #1798 [The Gang of Oracles]
git-svn-id: http://svn-commit.rubyonrails.org/rails/trunk@1912 5ecf4fe2-1ee6-0310-87b1-e25e094e27de
2005-07-24 14:01:35 +00:00
David Heinemeier Hansson
34f9d30e39 Added support for calling constrained class methods on has_many and has_and_belongs_to_many collections #1764 [Tobias Luetke]
git-svn-id: http://svn-commit.rubyonrails.org/rails/trunk@1894 5ecf4fe2-1ee6-0310-87b1-e25e094e27de
2005-07-22 20:05:42 +00:00
David Heinemeier Hansson
ea8f3f0a37 Added migration support for SQLite (using temporary tables to simulate ALTER TABLE) #1771 [Sam Stephenson]
git-svn-id: http://svn-commit.rubyonrails.org/rails/trunk@1893 5ecf4fe2-1ee6-0310-87b1-e25e094e27de
2005-07-22 19:58:03 +00:00
Jamis Buck
d886ad5c8b Fix acts_as_list such that moving next-to-last item to the bottom does not result in duplicate positions
git-svn-id: http://svn-commit.rubyonrails.org/rails/trunk@1872 5ecf4fe2-1ee6-0310-87b1-e25e094e27de
2005-07-20 12:47:55 +00:00
Jamis Buck
83e2f6ae1e Allow unspecified join-table columns to use to their default values when adding to a habtm collection
git-svn-id: http://svn-commit.rubyonrails.org/rails/trunk@1860 5ecf4fe2-1ee6-0310-87b1-e25e094e27de
2005-07-18 11:06:41 +00:00
David Heinemeier Hansson
9870396ed1 Fixed incompatibility in DB2 adapter with the new limit/offset approach #1718 [Maik Schmidt]
git-svn-id: http://svn-commit.rubyonrails.org/rails/trunk@1850 5ecf4fe2-1ee6-0310-87b1-e25e094e27de
2005-07-17 09:52:00 +00:00
David Heinemeier Hansson
6baedb0936 Make all tests pass on PGSQL #1759 [Rick Olson]
git-svn-id: http://svn-commit.rubyonrails.org/rails/trunk@1844 5ecf4fe2-1ee6-0310-87b1-e25e094e27de
2005-07-17 09:17:50 +00:00
David Heinemeier Hansson
6f05696ceb Added :select option to find which can specify a different value than the default *, like find(:all, :select => "first_name, last_name"), if you either only want to select part of the columns or exclude columns otherwise included from a join #1338 [Stefan Kaes]
git-svn-id: http://svn-commit.rubyonrails.org/rails/trunk@1830 5ecf4fe2-1ee6-0310-87b1-e25e094e27de
2005-07-14 07:18:26 +00:00
David Heinemeier Hansson
5b9b904f14 Added support for limit and offset with eager loading of has_one and belongs_to associations. Using the options with has_many and has_and_belongs_to_many associations will now raise an ActiveRecord::ConfigurationError #1692 [Rick Olsen]
git-svn-id: http://svn-commit.rubyonrails.org/rails/trunk@1811 5ecf4fe2-1ee6-0310-87b1-e25e094e27de
2005-07-11 06:09:08 +00:00
David Heinemeier Hansson
60499774c2 Fixed that each request with the WEBrick adapter would open a new database connection #1685 [Sam Stephenson]. Added ActiveRecord::Base.threaded_connections flag to turn off 1-connection per thread (required for thread safety). By default it's on, but WEBrick in Rails need it off #1685 [Sam Stephenson]
git-svn-id: http://svn-commit.rubyonrails.org/rails/trunk@1792 5ecf4fe2-1ee6-0310-87b1-e25e094e27de
2005-07-10 04:54:34 +00:00
Jeremy Kemper
5495b14a09 r2979@asus: jeremy | 2005-07-10 01:51:00 -0700
Split association reflection test into has_many and has_one tests.  TODO: extend to belongs_to and habtm as well.  Kill trailing whitespace.
 r2980@asus:  jeremy | 2005-07-10 01:53:41 -0700
 Test that eager load of firm.account (a has_one) returns the correct account.  This doesn't cover the regression in Ticket #1688, however.  Need a case where class name is not provided and the singular name is over-singularized by active_record.class_name.  Kill trailing whitespace.
 r2981@asus:  jeremy | 2005-07-10 01:56:44 -0700
 Fix class name resolution in AssociationReflection#name_to_class_name.  Use the equivalent of the idiomatic ||= (read or write if nil) for the class_inheritable_attribute reflection arrays.  Kill trailing whitespace.
 r2982@asus:  jeremy | 2005-07-10 01:59:08 -0700
 Remove superfluous assignment in compute_type.  In an inject, the return value is used for the next injection, so assigning to the injected value is unnecessary.


git-svn-id: http://svn-commit.rubyonrails.org/rails/trunk@1790 5ecf4fe2-1ee6-0310-87b1-e25e094e27de
2005-07-10 04:22:08 +00:00
David Heinemeier Hansson
14762fd229 better error message for missing associations #1631 [courtenay]
git-svn-id: http://svn-commit.rubyonrails.org/rails/trunk@1787 5ecf4fe2-1ee6-0310-87b1-e25e094e27de
2005-07-09 17:14:14 +00:00
David Heinemeier Hansson
47a3bafe26 Added a VERSION parameter to the migrate task that allows you to do "rake migrate VERSION=34" to migrate to the 34th version traveling up or down depending on the current version. Added ActiveRecord::Migrator.migrate that can figure out whether to go up or down based on the target version and the current
git-svn-id: http://svn-commit.rubyonrails.org/rails/trunk@1780 5ecf4fe2-1ee6-0310-87b1-e25e094e27de
2005-07-09 15:46:29 +00:00
Jamis Buck
56c3d72aa7 Fix regression from [1631] that caused an attribute to be set to nil if it was assigned false
git-svn-id: http://svn-commit.rubyonrails.org/rails/trunk@1709 5ecf4fe2-1ee6-0310-87b1-e25e094e27de
2005-07-05 12:38:06 +00:00
David Heinemeier Hansson
0bef168238 Made default changes work in both postgresql and mysql #1612 [Tobias Luetke]
git-svn-id: http://svn-commit.rubyonrails.org/rails/trunk@1703 5ecf4fe2-1ee6-0310-87b1-e25e094e27de
2005-07-05 09:16:23 +00:00
David Heinemeier Hansson
0e92f36d75 Added callbacks on push_with_attributes #1594 [Florian Weber]
git-svn-id: http://svn-commit.rubyonrails.org/rails/trunk@1698 5ecf4fe2-1ee6-0310-87b1-e25e094e27de
2005-07-05 07:20:24 +00:00
David Heinemeier Hansson
f1880cac58 Sugared up migrations with even more bling #1609 [Tobias Luekte]
git-svn-id: http://svn-commit.rubyonrails.org/rails/trunk@1697 5ecf4fe2-1ee6-0310-87b1-e25e094e27de
2005-07-05 07:19:20 +00:00
Jeremy Kemper
2418a68aa2 Simplify aaa_create_tables_test
git-svn-id: http://svn-commit.rubyonrails.org/rails/trunk@1696 5ecf4fe2-1ee6-0310-87b1-e25e094e27de
2005-07-05 05:08:24 +00:00
Jeremy Kemper
c1efa54195 Include all tables in mysql, sqlite, and postgresql drop sql.
git-svn-id: http://svn-commit.rubyonrails.org/rails/trunk@1695 5ecf4fe2-1ee6-0310-87b1-e25e094e27de
2005-07-05 05:07:49 +00:00
David Heinemeier Hansson
4160b518a8 Added new Migrations framework for describing schema transformations in a way that can be easily applied across multiple databases #1604 [Tobias Luetke]
git-svn-id: http://svn-commit.rubyonrails.org/rails/trunk@1672 5ecf4fe2-1ee6-0310-87b1-e25e094e27de
2005-07-04 18:51:02 +00:00
David Heinemeier Hansson
ab416b4dde Make postgres8 ar tests work #1601 [Tobias Luetke]
git-svn-id: http://svn-commit.rubyonrails.org/rails/trunk@1668 5ecf4fe2-1ee6-0310-87b1-e25e094e27de
2005-07-04 17:16:18 +00:00
David Heinemeier Hansson
4db3a40471 Tests for association callbacks
git-svn-id: http://svn-commit.rubyonrails.org/rails/trunk@1654 5ecf4fe2-1ee6-0310-87b1-e25e094e27de
2005-07-04 08:54:27 +00:00
David Heinemeier Hansson
4180e57b70 Added callback hooks to association collections #1549 [Florian Weber]
git-svn-id: http://svn-commit.rubyonrails.org/rails/trunk@1653 5ecf4fe2-1ee6-0310-87b1-e25e094e27de
2005-07-04 08:43:57 +00:00
David Heinemeier Hansson
55692003d4 Fixed Base.content_columns call for SQL Server adapter #1450 [DeLynn Berry] And a bug with the offset rules
git-svn-id: http://svn-commit.rubyonrails.org/rails/trunk@1647 5ecf4fe2-1ee6-0310-87b1-e25e094e27de
2005-07-03 12:34:22 +00:00
David Heinemeier Hansson
aaa5637249 Fixed Base#write_attribute to work with both symbols and strings #1190 [Paul Legato]
git-svn-id: http://svn-commit.rubyonrails.org/rails/trunk@1643 5ecf4fe2-1ee6-0310-87b1-e25e094e27de
2005-07-03 09:51:24 +00:00