Commit Graph

209 Commits

Author SHA1 Message Date
David Heinemeier Hansson
f9fca1eb63 Moved TimeZone to Active Support
git-svn-id: http://svn-commit.rubyonrails.org/rails/trunk@768 5ecf4fe2-1ee6-0310-87b1-e25e094e27de
2005-02-23 15:13:03 +00:00
David Heinemeier Hansson
10d458b0aa Added a OCI8-based Oracle adapter that has been verified to work with Oracle 8 and 9 #629 [Graham Jenkins]. Removed Maiks Oracle adapter until it can be merged with the OCI one.
git-svn-id: http://svn-commit.rubyonrails.org/rails/trunk@761 5ecf4fe2-1ee6-0310-87b1-e25e094e27de
2005-02-23 13:34:57 +00:00
David Heinemeier Hansson
6329daf5ac Added TimeZone as the first of a number of value objects that Active Record will start shipping to provide incentatives to use rich value objects using composed_of #688 [Jamis Buck]
git-svn-id: http://svn-commit.rubyonrails.org/rails/trunk@760 5ecf4fe2-1ee6-0310-87b1-e25e094e27de
2005-02-23 12:56:16 +00:00
David Heinemeier Hansson
c699a3e985 Added option :schema_order to the PostgreSQL adapter to support the use of multiple schemas per database #697 [YuriSchimke]
git-svn-id: http://svn-commit.rubyonrails.org/rails/trunk@755 5ecf4fe2-1ee6-0310-87b1-e25e094e27de
2005-02-23 12:29:19 +00:00
David Heinemeier Hansson
e58f2675df Documentation fixes #694
git-svn-id: http://svn-commit.rubyonrails.org/rails/trunk@753 5ecf4fe2-1ee6-0310-87b1-e25e094e27de
2005-02-23 12:14:28 +00:00
David Heinemeier Hansson
8fff2381ca Fixed the Broken pipe error on SHOW FIELDs queries too
git-svn-id: http://svn-commit.rubyonrails.org/rails/trunk@746 5ecf4fe2-1ee6-0310-87b1-e25e094e27de
2005-02-22 16:38:18 +00:00
David Heinemeier Hansson
e9426d2264 Optimized the SQL used to generate has_and_belongs_to_many queries by listing the join table first #693 [yerejm]
git-svn-id: http://svn-commit.rubyonrails.org/rails/trunk@741 5ecf4fe2-1ee6-0310-87b1-e25e094e27de
2005-02-22 13:58:22 +00:00
David Heinemeier Hansson
dfd43d577e Fixed that when using validation macros with a custom message, if you happened to use single quotes in the message string you would get a parsing error #657 [tonka]
git-svn-id: http://svn-commit.rubyonrails.org/rails/trunk@740 5ecf4fe2-1ee6-0310-87b1-e25e094e27de
2005-02-22 13:54:26 +00:00
David Heinemeier Hansson
f384582240 Fixed that Active Record would throw Broken Pipe errors with FCGI when the MySQL connection timed out instead of reconnecting #428 [Nicholas Seckar]
git-svn-id: http://svn-commit.rubyonrails.org/rails/trunk@729 5ecf4fe2-1ee6-0310-87b1-e25e094e27de
2005-02-21 01:44:15 +00:00
David Heinemeier Hansson
ba309a3e38 Added options to specify an SSL connection for MySQL. Define the following attributes in the connection config (config/database.yml in Rails) to use it: sslkey, sslcert, sslca, sslcapath, sslcipher. To use SSL with no client certs, just set :sslca = /dev/null. http://dev.mysql.com/doc/mysql/en/secure-connections.html #604 [daniel@nightrunner.com]
git-svn-id: http://svn-commit.rubyonrails.org/rails/trunk@720 5ecf4fe2-1ee6-0310-87b1-e25e094e27de
2005-02-20 21:47:09 +00:00
David Heinemeier Hansson
101968f367 Added automatic dropping/creating of test tables for running the unit tests on all databases #587 [adelle@bullet.net.au]
git-svn-id: http://svn-commit.rubyonrails.org/rails/trunk@719 5ecf4fe2-1ee6-0310-87b1-e25e094e27de
2005-02-20 21:21:41 +00:00
David Heinemeier Hansson
06b8936914 Fixed that find_by_* would fail when column names had numbers #670 [demetrius]
git-svn-id: http://svn-commit.rubyonrails.org/rails/trunk@681 5ecf4fe2-1ee6-0310-87b1-e25e094e27de
2005-02-19 11:30:38 +00:00
David Heinemeier Hansson
57c32677c9 Fixed the SQL Server adapter on a bunch of issues #667 [DeLynn]
git-svn-id: http://svn-commit.rubyonrails.org/rails/trunk@675 5ecf4fe2-1ee6-0310-87b1-e25e094e27de
2005-02-19 00:05:40 +00:00
David Heinemeier Hansson
5dcbe933df Added validates_each that validates each specified attribute against a block #610 [bitsweat]. Added :allow_nil as an explicit option for validates_length_of, so unless that's set to true having the attribute as nil will also return an error if a range is specified as :within #610 [bitsweat]
git-svn-id: http://svn-commit.rubyonrails.org/rails/trunk@667 5ecf4fe2-1ee6-0310-87b1-e25e094e27de
2005-02-18 17:27:26 +00:00
David Heinemeier Hansson
28edbca477 Fixed that the dynamic finder like find_all_by_something_boolean(false) didn't work #649 [lmarlow@yahoo.com]
git-svn-id: http://svn-commit.rubyonrails.org/rails/trunk@666 5ecf4fe2-1ee6-0310-87b1-e25e094e27de
2005-02-18 17:16:04 +00:00
David Heinemeier Hansson
5fc48bc54f Fixed a bit to eager requiring of oracle bindings in oracle adapter #634
git-svn-id: http://svn-commit.rubyonrails.org/rails/trunk@664 5ecf4fe2-1ee6-0310-87b1-e25e094e27de
2005-02-18 17:09:50 +00:00
David Heinemeier Hansson
0e764a5599 Addded validation for validate all the associated objects before declaring failure with validates_associated #618 [Tim Bates]. Added that validates_* now accept blocks to perform validations #618 [Tim Bates]
git-svn-id: http://svn-commit.rubyonrails.org/rails/trunk@650 5ecf4fe2-1ee6-0310-87b1-e25e094e27de
2005-02-17 19:14:15 +00:00
David Heinemeier Hansson
0aad5abcc8 AR, AP, and AM should look for AS in sibling directory before trying RubyGems #648
git-svn-id: http://svn-commit.rubyonrails.org/rails/trunk@648 5ecf4fe2-1ee6-0310-87b1-e25e094e27de
2005-02-17 19:04:47 +00:00
David Heinemeier Hansson
c00bf5f0c6 Fixed the verbosity of using the AR store
git-svn-id: http://svn-commit.rubyonrails.org/rails/trunk@639 5ecf4fe2-1ee6-0310-87b1-e25e094e27de
2005-02-17 01:23:41 +00:00
David Heinemeier Hansson
ca175ed7c9 All libraries should link against the independent active support
git-svn-id: http://svn-commit.rubyonrails.org/rails/trunk@625 5ecf4fe2-1ee6-0310-87b1-e25e094e27de
2005-02-15 16:15:02 +00:00
David Heinemeier Hansson
dc3d6eb9b4 Moved Active Support into its own gem
git-svn-id: http://svn-commit.rubyonrails.org/rails/trunk@624 5ecf4fe2-1ee6-0310-87b1-e25e094e27de
2005-02-15 15:57:44 +00:00
David Heinemeier Hansson
a3298e5efd Small indent
git-svn-id: http://svn-commit.rubyonrails.org/rails/trunk@613 5ecf4fe2-1ee6-0310-87b1-e25e094e27de
2005-02-15 00:03:18 +00:00
David Heinemeier Hansson
1aa82b3217 Added keyword-style approach to defining the custom relational bindings #545 [Jamis Buck]
git-svn-id: http://svn-commit.rubyonrails.org/rails/trunk@527 5ecf4fe2-1ee6-0310-87b1-e25e094e27de
2005-02-07 14:26:57 +00:00
David Heinemeier Hansson
098fa94356 Fixed documentation snafus #575, #576, #577, #585
git-svn-id: http://svn-commit.rubyonrails.org/rails/trunk@525 5ecf4fe2-1ee6-0310-87b1-e25e094e27de
2005-02-07 14:15:53 +00:00
David Heinemeier Hansson
9b0fd9d00d Added that the 'fixture :posts' syntax can be used for has_and_belongs_to_many fixtures where a model doesn't exist #572 [bitsweat]
git-svn-id: http://svn-commit.rubyonrails.org/rails/trunk@524 5ecf4fe2-1ee6-0310-87b1-e25e094e27de
2005-02-07 14:10:44 +00:00
David Heinemeier Hansson
336c2cbb8f Added an Oracle adapter that works with the Oracle bindings by Yoshida (http://raa.ruby-lang.org/project/oracle/) #564 [Maik Schmidt]
git-svn-id: http://svn-commit.rubyonrails.org/rails/trunk@522 5ecf4fe2-1ee6-0310-87b1-e25e094e27de
2005-02-07 14:06:00 +00:00
David Heinemeier Hansson
431e21cb45 Fixed Base#clone for use with PostgreSQL #565 [hanson@surgery.wisc.edu]
git-svn-id: http://svn-commit.rubyonrails.org/rails/trunk@519 5ecf4fe2-1ee6-0310-87b1-e25e094e27de
2005-02-07 13:43:44 +00:00
David Heinemeier Hansson
66f44e6cbb Updated documentation for serialize
git-svn-id: http://svn-commit.rubyonrails.org/rails/trunk@512 5ecf4fe2-1ee6-0310-87b1-e25e094e27de
2005-01-25 20:00:20 +00:00
David Heinemeier Hansson
efa81dad51 Added the option of supplying an array of ids and attributes to Base#update, so that multiple records can be updated at once (inspired by #526/Duane Johnson). Added the option of supplying an array of attributes to Base#create, so that multiple records can be created at once. Added that Base#delete and Base#destroy both can take an array of ids to delete/destroy #336. Added that has_many association build and create methods can take arrays of record data like Base#create and Base#build to build/create multiple records at once.
git-svn-id: http://svn-commit.rubyonrails.org/rails/trunk@504 5ecf4fe2-1ee6-0310-87b1-e25e094e27de
2005-01-25 12:45:01 +00:00
David Heinemeier Hansson
256b594a03 Fixed documentation #538
git-svn-id: http://svn-commit.rubyonrails.org/rails/trunk@503 5ecf4fe2-1ee6-0310-87b1-e25e094e27de
2005-01-25 11:20:42 +00:00
David Heinemeier Hansson
fd67e3befc The create and build methods are only available for has_one/belongs_to if an association already exist. It will not work when it's nil. Updated the documentation to reflect that.
git-svn-id: http://svn-commit.rubyonrails.org/rails/trunk@501 5ecf4fe2-1ee6-0310-87b1-e25e094e27de
2005-01-25 10:04:49 +00:00
David Heinemeier Hansson
0d2db8a7d1 Added Base.update_collection that can update an array of id/attribute pairs, such as the ones produced by the recent added support for automatic id-based indexing for lists of items #526 [Duane Johnson]
git-svn-id: http://svn-commit.rubyonrails.org/rails/trunk@496 5ecf4fe2-1ee6-0310-87b1-e25e094e27de
2005-01-24 14:13:10 +00:00
David Heinemeier Hansson
981d86cbb9 Added ActiveRecord::Base.timestamps_gmt that can be set to true to make the automated timestamping use GMT instead of local time #520 [Scott Baron]
git-svn-id: http://svn-commit.rubyonrails.org/rails/trunk@491 5ecf4fe2-1ee6-0310-87b1-e25e094e27de
2005-01-24 13:18:29 +00:00
David Heinemeier Hansson
566a36966b Added that update_all calls sanitize_sql on its updates argument, so stuff like MyRecord.update_all(['time = ?', Time.now]) works #519 [notahat]
git-svn-id: http://svn-commit.rubyonrails.org/rails/trunk@489 5ecf4fe2-1ee6-0310-87b1-e25e094e27de
2005-01-24 13:06:12 +00:00
David Heinemeier Hansson
93ec130377 Fixed that the dynamic finders didnt treat nil as a "IS NULL" but rather "= NULL" case #515 [Demetrius]
git-svn-id: http://svn-commit.rubyonrails.org/rails/trunk@488 5ecf4fe2-1ee6-0310-87b1-e25e094e27de
2005-01-24 13:02:50 +00:00
David Heinemeier Hansson
872ddaf290 Added bind-named arrays for interpolating a group of ids or strings in conditions #528 [bitsweat]
git-svn-id: http://svn-commit.rubyonrails.org/rails/trunk@485 5ecf4fe2-1ee6-0310-87b1-e25e094e27de
2005-01-24 11:57:22 +00:00
David Heinemeier Hansson
b29c01ea89 Added that has_and_belongs_to_many associations with additional attributes also can be created between unsaved objects and only committed to the database when Base#save is called on the associator #524 [Eric Anderson]
git-svn-id: http://svn-commit.rubyonrails.org/rails/trunk@484 5ecf4fe2-1ee6-0310-87b1-e25e094e27de
2005-01-24 11:39:23 +00:00
David Heinemeier Hansson
1d61845587 Fixed that records fetched with piggy-back attributes or through rich has_and_belongs_to_many associations couldn't be saved due to the extra attributes not part of the table #522 [Eric Anderson]
git-svn-id: http://svn-commit.rubyonrails.org/rails/trunk@483 5ecf4fe2-1ee6-0310-87b1-e25e094e27de
2005-01-24 11:20:47 +00:00
David Heinemeier Hansson
95454bfb33 Added mass-assignment protection for the inheritance column -- regardless of a custom column is used or not
git-svn-id: http://svn-commit.rubyonrails.org/rails/trunk@477 5ecf4fe2-1ee6-0310-87b1-e25e094e27de
2005-01-23 17:24:54 +00:00
David Heinemeier Hansson
97849debf3 Fixed that association proxies would fail === tests like PremiumSubscription === @account.subscription
git-svn-id: http://svn-commit.rubyonrails.org/rails/trunk@476 5ecf4fe2-1ee6-0310-87b1-e25e094e27de
2005-01-23 15:19:33 +00:00
David Heinemeier Hansson
b40d3c9e62 Replaced === checks with is_a? checks #502, #82 [Marcel Molina]
git-svn-id: http://svn-commit.rubyonrails.org/rails/trunk@466 5ecf4fe2-1ee6-0310-87b1-e25e094e27de
2005-01-20 14:40:11 +00:00
David Heinemeier Hansson
db6688585f Fixed that column aliases didn't work as expected with the new MySql411 driver #507 [Demetrius]
git-svn-id: http://svn-commit.rubyonrails.org/rails/trunk@465 5ecf4fe2-1ee6-0310-87b1-e25e094e27de
2005-01-20 14:36:39 +00:00
David Heinemeier Hansson
4ddbe0ac44 Fixed that find_all would produce invalid sql when called sequentialy #490 [Scott Baron]
git-svn-id: http://svn-commit.rubyonrails.org/rails/trunk@464 5ecf4fe2-1ee6-0310-87b1-e25e094e27de
2005-01-20 14:35:00 +00:00
David Heinemeier Hansson
3ebde40cec Cleanup the proxy rollback #492
git-svn-id: http://svn-commit.rubyonrails.org/rails/trunk@457 5ecf4fe2-1ee6-0310-87b1-e25e094e27de
2005-01-18 14:06:49 +00:00
David Heinemeier Hansson
bce0e14930 Fixed that the belongs_to and has_one proxy would fail a test like 'if project.manager' -- this unfortunately also means that you can't call methods like project.manager.build unless there already is a manager on the project #492 [Tim Bates]
git-svn-id: http://svn-commit.rubyonrails.org/rails/trunk@456 5ecf4fe2-1ee6-0310-87b1-e25e094e27de
2005-01-18 11:07:03 +00:00
David Heinemeier Hansson
53088c4c7f Fixed that the Ruby/MySQL adapter wouldn't connect if the password was empty #503 [Pelle]
git-svn-id: http://svn-commit.rubyonrails.org/rails/trunk@454 5ecf4fe2-1ee6-0310-87b1-e25e094e27de
2005-01-18 09:54:12 +00:00
David Heinemeier Hansson
1f7e72ff51 Made human_attribute_name(attribute_key_name) use Inflector.humanize
git-svn-id: http://svn-commit.rubyonrails.org/rails/trunk@451 5ecf4fe2-1ee6-0310-87b1-e25e094e27de
2005-01-17 19:58:02 +00:00
David Heinemeier Hansson
dd420ef303 Make sure #470 shouldnt be happening
git-svn-id: http://svn-commit.rubyonrails.org/rails/trunk@437 5ecf4fe2-1ee6-0310-87b1-e25e094e27de
2005-01-17 01:01:21 +00:00
David Heinemeier Hansson
44ac6046c1 Only remember that an association was loaded if it was found
git-svn-id: http://svn-commit.rubyonrails.org/rails/trunk@435 5ecf4fe2-1ee6-0310-87b1-e25e094e27de
2005-01-17 00:44:22 +00:00
David Heinemeier Hansson
1ae630a404 belongs_to association should always honor a present foreign key and condition interpolation should also be possible on belongs_to
git-svn-id: http://svn-commit.rubyonrails.org/rails/trunk@433 5ecf4fe2-1ee6-0310-87b1-e25e094e27de
2005-01-17 00:30:53 +00:00