Commit Graph

271 Commits

Author SHA1 Message Date
David Heinemeier Hansson
81014da84c Use :foreign_key option if specified on the association
git-svn-id: http://svn-commit.rubyonrails.org/rails/trunk@1096 5ecf4fe2-1ee6-0310-87b1-e25e094e27de
2005-04-05 17:11:49 +00:00
David Heinemeier Hansson
d6901bfe93 Dont include multiple versions of the same association object
git-svn-id: http://svn-commit.rubyonrails.org/rails/trunk@1087 5ecf4fe2-1ee6-0310-87b1-e25e094e27de
2005-04-04 07:20:32 +00:00
David Heinemeier Hansson
9e799e731c Prefix primary key with table name so it works as part of a joined fetch
git-svn-id: http://svn-commit.rubyonrails.org/rails/trunk@1086 5ecf4fe2-1ee6-0310-87b1-e25e094e27de
2005-04-04 04:56:23 +00:00
David Heinemeier Hansson
edcaa2e5f7 More eager fixes
git-svn-id: http://svn-commit.rubyonrails.org/rails/trunk@1084 5ecf4fe2-1ee6-0310-87b1-e25e094e27de
2005-04-03 18:21:20 +00:00
David Heinemeier Hansson
f8783abf0c Made eager loading work even more
git-svn-id: http://svn-commit.rubyonrails.org/rails/trunk@1083 5ecf4fe2-1ee6-0310-87b1-e25e094e27de
2005-04-03 17:50:11 +00:00
David Heinemeier Hansson
efb55d1cf5 Allow order, conditions, and joins in finds that include associations
git-svn-id: http://svn-commit.rubyonrails.org/rails/trunk@1080 5ecf4fe2-1ee6-0310-87b1-e25e094e27de
2005-04-03 12:06:23 +00:00
David Heinemeier Hansson
4f6c943b05 Only include associations when the relevant rows have content
git-svn-id: http://svn-commit.rubyonrails.org/rails/trunk@1079 5ecf4fe2-1ee6-0310-87b1-e25e094e27de
2005-04-03 12:04:57 +00:00
David Heinemeier Hansson
abc895b828 Added new Base.find API and deprecated find_all, find_first. Added preliminary support for eager loading of associations
git-svn-id: http://svn-commit.rubyonrails.org/rails/trunk@1077 5ecf4fe2-1ee6-0310-87b1-e25e094e27de
2005-04-03 10:52:05 +00:00
David Heinemeier Hansson
7c8d2f28e1 Removed broken attempt to DRY module ClassMethod #970
git-svn-id: http://svn-commit.rubyonrails.org/rails/trunk@1069 5ecf4fe2-1ee6-0310-87b1-e25e094e27de
2005-04-02 09:29:43 +00:00
David Heinemeier Hansson
c788bcb416 Automatically extend the class which gets a module included with the ClassMethods module if it exists #970 [Lucas Carlson]
git-svn-id: http://svn-commit.rubyonrails.org/rails/trunk@1068 5ecf4fe2-1ee6-0310-87b1-e25e094e27de
2005-04-02 09:14:19 +00:00
David Heinemeier Hansson
5b36c9275d Fixed boolean queries for t/f fields in PostgreSQL #995 [dave@cherryville.org]
git-svn-id: http://svn-commit.rubyonrails.org/rails/trunk@1066 5ecf4fe2-1ee6-0310-87b1-e25e094e27de
2005-04-02 08:58:43 +00:00
David Heinemeier Hansson
1ba1779754 Added that model.items.delete(child) will delete the child, not just set the foreign key to nil, if the child is dependent on the model #978 [bitsweat]
git-svn-id: http://svn-commit.rubyonrails.org/rails/trunk@1064 5ecf4fe2-1ee6-0310-87b1-e25e094e27de
2005-04-02 08:52:51 +00:00
David Heinemeier Hansson
c6cc707854 Fixed auto-stamping of dates (created_on/updated_on) for PostgreSQL #985 [dave@cherryville.org]
git-svn-id: http://svn-commit.rubyonrails.org/rails/trunk@1063 5ecf4fe2-1ee6-0310-87b1-e25e094e27de
2005-04-02 08:42:21 +00:00
David Heinemeier Hansson
aec31cd09f Fixed Base.silence/benchmark to only log if a logger has been configured #986 [skaes@web.de]
git-svn-id: http://svn-commit.rubyonrails.org/rails/trunk@1059 5ecf4fe2-1ee6-0310-87b1-e25e094e27de
2005-04-02 08:31:26 +00:00
David Heinemeier Hansson
06a6133fff Added a join parameter as the third argument to Base.find_first and as the second to Base.count #426, #988 [skaes@web.de]
git-svn-id: http://svn-commit.rubyonrails.org/rails/trunk@1058 5ecf4fe2-1ee6-0310-87b1-e25e094e27de
2005-04-02 08:29:54 +00:00
David Heinemeier Hansson
e130b9e017 Added a join parameter as the third argument to Base.find_first #426 [skaes@web.de]
git-svn-id: http://svn-commit.rubyonrails.org/rails/trunk@1047 5ecf4fe2-1ee6-0310-87b1-e25e094e27de
2005-03-31 14:35:14 +00:00
David Heinemeier Hansson
cfef86c645 Fixed bug in Base#hash method that would treat records with the same string-based id as different [Dave Thomas]
git-svn-id: http://svn-commit.rubyonrails.org/rails/trunk@1039 5ecf4fe2-1ee6-0310-87b1-e25e094e27de
2005-03-30 14:25:29 +00:00
David Heinemeier Hansson
715715aed4 Dont load the target before the proxy has had a chance to answer the respond_to? -- this would cause an .empty? query to trigger loading the entire collection if the proxy had already been initialized
git-svn-id: http://svn-commit.rubyonrails.org/rails/trunk@1036 5ecf4fe2-1ee6-0310-87b1-e25e094e27de
2005-03-29 12:31:05 +00:00
David Heinemeier Hansson
55cb8c8f0d Fixed that Active Record objects with float attribute could not be cloned #808
git-svn-id: http://svn-commit.rubyonrails.org/rails/trunk@1022 5ecf4fe2-1ee6-0310-87b1-e25e094e27de
2005-03-27 13:56:02 +00:00
David Heinemeier Hansson
5cd38ca25d Added documentation about named bind variables
git-svn-id: http://svn-commit.rubyonrails.org/rails/trunk@1020 5ecf4fe2-1ee6-0310-87b1-e25e094e27de
2005-03-27 12:04:07 +00:00
David Heinemeier Hansson
a5c6942830 Fixed that :counter_cache option would look for a line_items_count column for a LineItem object instead of lineitems_count
git-svn-id: http://svn-commit.rubyonrails.org/rails/trunk@989 5ecf4fe2-1ee6-0310-87b1-e25e094e27de
2005-03-23 23:39:18 +00:00
David Heinemeier Hansson
d09e42cfe4 Fixed that AR exists?() would explode on postgresql if the passed id did not match the PK type #900 [Scott Barron]
git-svn-id: http://svn-commit.rubyonrails.org/rails/trunk@983 5ecf4fe2-1ee6-0310-87b1-e25e094e27de
2005-03-23 00:57:38 +00:00
David Heinemeier Hansson
f30b7a31bd Fixed the MS SQL adapter to work with the new limit/offset approach and with binary data (still suffering from 7KB limit, though) #901 [delynnb]
git-svn-id: http://svn-commit.rubyonrails.org/rails/trunk@982 5ecf4fe2-1ee6-0310-87b1-e25e094e27de
2005-03-23 00:56:13 +00:00
David Heinemeier Hansson
daaa5251c9 Fixed documentation and prepared for 0.11.0 release
git-svn-id: http://svn-commit.rubyonrails.org/rails/trunk@976 5ecf4fe2-1ee6-0310-87b1-e25e094e27de
2005-03-22 13:09:44 +00:00
David Heinemeier Hansson
ee8d110068 Added adapter independent limit clause as a two-element array with the first being the limit, the second being the offset #795 [Sam Stephenson]
git-svn-id: http://svn-commit.rubyonrails.org/rails/trunk@944 5ecf4fe2-1ee6-0310-87b1-e25e094e27de
2005-03-20 21:56:50 +00:00
David Heinemeier Hansson
ce23862800 Added alias_method :to_param, :id to Base, such that Active Record objects to be used as URL parameters in Action Pack automatically #812 [Nicholas Seckar/Sam Stephenson]
git-svn-id: http://svn-commit.rubyonrails.org/rails/trunk@936 5ecf4fe2-1ee6-0310-87b1-e25e094e27de
2005-03-20 15:45:36 +00:00
David Heinemeier Hansson
1b40f051e7 Improved the performance of the OCI8 adapter for Oracle #723 [pilx/gjenkins]
git-svn-id: http://svn-commit.rubyonrails.org/rails/trunk@930 5ecf4fe2-1ee6-0310-87b1-e25e094e27de
2005-03-20 14:33:45 +00:00
David Heinemeier Hansson
dabf906249 Added type conversion before saving a record, so string-based values like "10.0" arent left for the database to convert #820 [dave@cherryville.org]
git-svn-id: http://svn-commit.rubyonrails.org/rails/trunk@928 5ecf4fe2-1ee6-0310-87b1-e25e094e27de
2005-03-20 14:25:26 +00:00
David Heinemeier Hansson
b2cfbc4cc9 Added with additional settings for working with transactional fixtures and pre-loaded test databases #865 [mindel]
git-svn-id: http://svn-commit.rubyonrails.org/rails/trunk@924 5ecf4fe2-1ee6-0310-87b1-e25e094e27de
2005-03-20 13:42:35 +00:00
David Heinemeier Hansson
6717ed61c1 Fixed acts_as_list to trigger remove_from_list on destroy after the fact, not before, so a unique position can be maintained #871 [Alisdair McDiarmid]
git-svn-id: http://svn-commit.rubyonrails.org/rails/trunk@923 5ecf4fe2-1ee6-0310-87b1-e25e094e27de
2005-03-20 13:39:15 +00:00
David Heinemeier Hansson
8ccbe90a07 Added warning about specifying callbacks before associations to trigger inheritance
git-svn-id: http://svn-commit.rubyonrails.org/rails/trunk@917 5ecf4fe2-1ee6-0310-87b1-e25e094e27de
2005-03-19 15:36:41 +00:00
David Heinemeier Hansson
060b9b16aa Added the possibility of specifying fixtures in multiple calls #816 [kim@tinker.com]
git-svn-id: http://svn-commit.rubyonrails.org/rails/trunk@915 5ecf4fe2-1ee6-0310-87b1-e25e094e27de
2005-03-17 19:36:44 +00:00
David Heinemeier Hansson
2f944123f3 Added Base.exists?(id) that'll return true if an object of the class with the given id exists #854 [stian@grytoyr.net]
git-svn-id: http://svn-commit.rubyonrails.org/rails/trunk@913 5ecf4fe2-1ee6-0310-87b1-e25e094e27de
2005-03-17 14:12:25 +00:00
David Heinemeier Hansson
b55f59e811 Added optionally allow for nil or empty strings with validates_numericality_of #801 [Sebastian Kanthak] Fixed problem with using slashes in validates_format_of regular expressions #801 [Sebastian Kanthak]
git-svn-id: http://svn-commit.rubyonrails.org/rails/trunk@910 5ecf4fe2-1ee6-0310-87b1-e25e094e27de
2005-03-14 23:56:47 +00:00
David Heinemeier Hansson
bfa6bfc24a Fixed that SQLite3 exceptions are caught and reported properly #823 [yerejm]
git-svn-id: http://svn-commit.rubyonrails.org/rails/trunk@909 5ecf4fe2-1ee6-0310-87b1-e25e094e27de
2005-03-14 23:48:39 +00:00
David Heinemeier Hansson
9982578efb Doc fix #805
git-svn-id: http://svn-commit.rubyonrails.org/rails/trunk@900 5ecf4fe2-1ee6-0310-87b1-e25e094e27de
2005-03-14 00:23:34 +00:00
David Heinemeier Hansson
7edb10fe68 Added that all types of after_find/after_initialized callbacks are triggered if the explicit implementation is present, not only the explicit implementation itself
git-svn-id: http://svn-commit.rubyonrails.org/rails/trunk@898 5ecf4fe2-1ee6-0310-87b1-e25e094e27de
2005-03-14 00:04:14 +00:00
David Heinemeier Hansson
fba2421c79 Fixed example in docs
git-svn-id: http://svn-commit.rubyonrails.org/rails/trunk@893 5ecf4fe2-1ee6-0310-87b1-e25e094e27de
2005-03-13 15:35:49 +00:00
David Heinemeier Hansson
2bfaa05595 Fixed that symbols can be used on attribute assignment, like page.emails.create(:subject => data.subject, :body => data.body)
git-svn-id: http://svn-commit.rubyonrails.org/rails/trunk@886 5ecf4fe2-1ee6-0310-87b1-e25e094e27de
2005-03-10 14:44:01 +00:00
David Heinemeier Hansson
ef214ecc40 More incremental work on active schema for MySQL
git-svn-id: http://svn-commit.rubyonrails.org/rails/trunk@885 5ecf4fe2-1ee6-0310-87b1-e25e094e27de
2005-03-10 14:30:35 +00:00
David Heinemeier Hansson
65786805ca More incremental work on active schema for MySQL
git-svn-id: http://svn-commit.rubyonrails.org/rails/trunk@884 5ecf4fe2-1ee6-0310-87b1-e25e094e27de
2005-03-10 14:24:28 +00:00
David Heinemeier Hansson
911614df6e Added ActiveRecord::Base.colorize_logging to control whether to use colors in logs or not (on by default)
git-svn-id: http://svn-commit.rubyonrails.org/rails/trunk@860 5ecf4fe2-1ee6-0310-87b1-e25e094e27de
2005-03-06 17:18:34 +00:00
David Heinemeier Hansson
36a9eff957 Added support for timestamp with time zone in PostgreSQL #560 [Scott Barron]
git-svn-id: http://svn-commit.rubyonrails.org/rails/trunk@858 5ecf4fe2-1ee6-0310-87b1-e25e094e27de
2005-03-06 14:31:38 +00:00
David Heinemeier Hansson
d2fefbe908 Added MultiparameterAssignmentErrors and AttributeAssignmentError exceptions #777 [demetrius]
git-svn-id: http://svn-commit.rubyonrails.org/rails/trunk@853 5ecf4fe2-1ee6-0310-87b1-e25e094e27de
2005-03-06 14:11:26 +00:00
David Heinemeier Hansson
cbb65c39ec Fixed that postgresql adapter would fails when reading bytea fields with null value #771 [rodrigo k]
git-svn-id: http://svn-commit.rubyonrails.org/rails/trunk@849 5ecf4fe2-1ee6-0310-87b1-e25e094e27de
2005-03-06 13:59:15 +00:00
David Heinemeier Hansson
87b55f59dd Updated wording in YAML error [noradio]
git-svn-id: http://svn-commit.rubyonrails.org/rails/trunk@847 5ecf4fe2-1ee6-0310-87b1-e25e094e27de
2005-03-06 13:53:29 +00:00
David Heinemeier Hansson
903ef71b99 Added transactional fixtures that uses rollback to undo changes to fixtures instead of DELETE/INSERT -- it's much faster. See documentation under Fixtures #760 [bitsweat]
git-svn-id: http://svn-commit.rubyonrails.org/rails/trunk@846 5ecf4fe2-1ee6-0310-87b1-e25e094e27de
2005-03-06 13:51:55 +00:00
David Heinemeier Hansson
0ceab8114c Better yaml fixture error #759 [xal]
git-svn-id: http://svn-commit.rubyonrails.org/rails/trunk@845 5ecf4fe2-1ee6-0310-87b1-e25e094e27de
2005-03-06 13:45:22 +00:00
David Heinemeier Hansson
7267db5890 Added destruction of dependent objects in has_one associations when a new assignment happens #742 [mindel]
git-svn-id: http://svn-commit.rubyonrails.org/rails/trunk@843 5ecf4fe2-1ee6-0310-87b1-e25e094e27de
2005-03-06 13:40:21 +00:00
David Heinemeier Hansson
838ae35d63 Added validates_numericality_of #716 [skanthak/c.r.mcgrath]
git-svn-id: http://svn-commit.rubyonrails.org/rails/trunk@842 5ecf4fe2-1ee6-0310-87b1-e25e094e27de
2005-03-06 12:43:23 +00:00