Commit Graph

1195 Commits

Author SHA1 Message Date
Pratik Naik
39e1ac658e Merge docrails 2009-01-18 18:10:58 +00:00
Michael Lovitt
7a0e7c7270 Fixed broken after_save callback; was being called when before_create was canceled or before_update was canceled
Signed-off-by: Michael Koziarski <michael@koziarski.com>
[#1735 state:committed]
2009-01-16 10:11:58 +13:00
Jeremy Kemper
ab0ce052ba Introduce transaction_joinable flag to mark that the fixtures transaction can't joined, a new savepoint is required even if :requires_new is not set. Use :requires_new option instead of :nest. Update changelog.
[#383 state:committed]
2009-01-10 13:39:37 -08:00
Yaroslav Markin
66ee5890c5 Introduce dynamic scopes for ActiveRecord: you can now use class methods like scoped_by_user_name(user_name) and scoped_by_user_name_and_password(user_name, password) that will use the scoped method with attributes you supply. [#1648 state:committed]
Signed-off-by: David Heinemeier Hansson <david@loudthinking.com>
2008-12-28 20:52:46 +01:00
Yaroslav Markin
6e98adfc8e ActiveRecord::Base#new_record? now returns false for existing records (was nil) [#1219 state:committed]
Signed-off-by: David Heinemeier Hansson <david@loudthinking.com>
2008-12-27 14:36:11 +01:00
Xavier Noria
46c7dd2348 normalize author names in changelogs [#1495 state:committed]
Signed-off-by: David Heinemeier Hansson <david@loudthinking.com>
2008-12-16 14:33:32 +01:00
Jeremy Kemper
9b22e56d89 Changelog entry for #1294 2008-12-08 15:59:42 -08:00
miloops
97403ad5fd Add :having option to find, to use in combination with grouped finds. Also added to has_many and has_and_belongs_to_many associations.
Signed-off-by: Michael Koziarski <michael@koziarski.com>
[#1028 state:committed]
2008-12-01 20:22:31 +01:00
Pratik Naik
2530d0eea8 Added default_scope to Base [#1381 state:committed] (Paweł Kondzior) 2008-11-16 23:36:41 +05:30
David Heinemeier Hansson
ca23287b44 Revert "Added default_scope to Base [#1381 state:committed] (Paweł Kondzior)" -- won't gel with threads.
This reverts commit ff594b2bc9.
2008-11-16 16:35:52 +01:00
David Heinemeier Hansson
ff594b2bc9 Added default_scope to Base [#1381 state:committed] (Paweł Kondzior) 2008-11-16 16:01:18 +01:00
David Heinemeier Hansson
61e43700b8 Prepare for RC2 2008-11-14 12:26:50 +01:00
Michael Koziarski
9d4337ea13 Revert commit which breaks all the tests.
This reverts commit 8adb79b9b5.

Conflicts:

	activerecord/CHANGELOG
2008-11-07 07:31:59 +00:00
David Heinemeier Hansson
a358d87e16 Fixed the sanitize helper to avoid double escaping already properly escaped entities [#683 state:committed] 2008-11-06 13:02:32 +01:00
David Heinemeier Hansson
077773257b Stop logging SHOW FIELDS and SET SQL_AUTO_IS_NULL=0 for the MysqlAdapter as they only clutter up the log and offer no value [DHH] 2008-11-06 12:59:17 +01:00
Jordi Bunster
a9e8168432 Ensure indices don't flip order in schema.rb [#1266 state:committed]
Signed-off-by: David Heinemeier Hansson <david@loudthinking.com>
2008-10-30 13:03:42 +01:00
David Heinemeier Hansson
c94ba8150a Fixed that serialized strings should never be type-casted (i.e. turning "Yes" to a boolean)(Andreas Korth) [#857 state:committed] 2008-10-27 17:16:45 +01:00
David Heinemeier Hansson
d224e6ccb1 Update CHANGELOGs with the last few fixes, set date for today 2008-10-24 13:08:47 +02:00
David Heinemeier Hansson
57c31a380e Prepare for Rails 2.2.0 [RC1] 2008-10-23 20:14:20 +02:00
Hongli Lai (Phusion
46939a9b5a Add Model#delete instance method, similar to Model.delete class method. [#1086 state:resolved]
Signed-off-by: Pratik Naik <pratiknaik@gmail.com>
2008-09-21 22:53:44 +01:00
Frederick Cheung
d51a39ff50 Deal with MySQL's quirky handling of defaults and blob/text columns
[#1043 state:committed]

Signed-off-by: Jeremy Kemper <jeremy@bitsweat.net>
2008-09-14 17:11:22 -07:00
gbuesing
d95943b276 Multiparameter attributes skip time zone conversion for time-only columns [#1030 state:resolved] 2008-09-14 18:16:50 -05:00
miloops
9c4730d01e Base.skip_time_zone_conversion_for_attributes uses class_inheritable_accessor, so that subclasses don't overwrite Base [#346 state:resolved] 2008-09-14 17:18:17 -05:00
Pratik Naik
9994f0d902 Revert "Add :accessible option to Associations for allowing mass assignments using hash. [#474 state:resolved]"
This reverts commit e0750d6a5c.

Conflicts:

	activerecord/CHANGELOG
	activerecord/lib/active_record/associations.rb
	activerecord/lib/active_record/associations/association_collection.rb
2008-09-10 18:50:01 +01:00
David Heinemeier Hansson
6dc9173a63 Missing doc updates 2008-09-09 23:59:54 -05:00
Hongli Lai (Phusion)
1398db0128 Add special AssociationReflection methods for creating association objects, and modify the code base to use those methods instead of creating association objects directly. This allows plugins to hook into association object creation behavior.
[#986 state:resolved]

Signed-off-by: Jeremy Kemper <jeremy@bitsweat.net>
2008-09-09 13:13:12 -07:00
Hongli Lai (Phusion)
1692940441 Make the options that has_many, belongs_to and other association generation methods can accept, configurable.
[#985 state:resolved]

Signed-off-by: Jeremy Kemper <jeremy@bitsweat.net>
2008-09-09 12:50:32 -07:00
David Heinemeier Hansson
de0e7507de Changed all benchmarking reports to be in milliseconds 2008-09-05 14:22:57 +02:00
Jeremy Kemper
6f932b4790 Database connections are now pooled, one pool per #establish_connection call.
Pools start out empty and grow as necessary to a maximum size (default is 5,
configure size with key 'pool' in your database configuration). If no
connections are available, a thread will wait up to a 'wait_timeout' time
(default is 5 seconds).

Connections are verified and reset when checked out from the pool (usually
upon first access to ActiveRecord::Base.connection), and returned back to the
pool after each request.

If you would like to use connection pools outside of ActionPack, there is an
ActiveRecord::Base.connection_pool method that gives you access to the pool,
and you can manually checkout/checkin connections, or supply a block to
ActiveRecord::Base.connection_pool.with_connection which takes care of the
checkout/checkin for you.

[#936 state:resolved]
2008-09-02 18:32:54 +02:00
Jeremy Kemper
082c377954 Missed changelog update for #501 2008-08-28 12:32:38 -07:00
Xavier Noria
e02f0dcc24 Rollback the transaction when a before_* callback returns false.
Previously this would have committed the transaction but not carried out save or destroy operation.

[#891 state:committed]
Signed-off-by: Michael Koziarski <michael@koziarski.com>
2008-08-24 14:34:24 +02:00
Tarmo Tänav
707ee0e269 Made migrations transactional for PostgreSQL [#834 state:resolved]
Patch originally from http://dev.rubyonrails.org/ticket/5470
2008-08-22 14:46:25 -07:00
Nik Wakelin
bbab639136 Set config.active_record.timestamped_migrations = false to have migrations with numeric prefix instead of UTC timestamp. [#446 state:resolved]
Signed-off-by: Pratik Naik <pratiknaik@gmail.com>
2008-07-17 02:54:45 +01:00
Tarmo Tänav
07578ac855 Fixed mysql change_column_default to not make the column always nullable.
Also added change_column_null to both mysql and sqlite to keep the api features closer to postgresql.

[#617 state:resolved]
2008-07-14 12:42:01 -07:00
David Heinemeier Hansson
3037022789 Fixed that create database statements would always include "DEFAULT NULL" (Nick Sieger) [#334 status:committed] 2008-07-14 10:12:54 -05:00
David Dollar
e0750d6a5c Add :accessible option to Associations for allowing mass assignments using hash. [#474 state:resolved]
Allows nested Hashes (i.e. from nested forms) to hydrate the appropriate
ActiveRecord models.

class Post < ActiveRecord::Base
  belongs_to :author,   :accessible => true
  has_many   :comments, :accessible => true
end

post = Post.create({
  :title    => 'Accessible Attributes',
  :author   => { :name => 'David Dollar' },
  :comments => [
    { :body => 'First Post!' },
    { :body => 'Nested Hashes are great!' }
  ]
})

post.comments << { :body => 'Another Comment' }

Signed-off-by: Pratik Naik <pratiknaik@gmail.com>
2008-07-14 02:53:21 +01:00
David Lowenfels
87fbcaa622 Add :tokenizer option to validates_length_of. [#507 state:resolved]
Signed-off-by: Pratik Naik <pratiknaik@gmail.com>
2008-07-04 01:31:39 +01:00
Pratik Naik
cd994eff9a Allow conditions on multiple tables to be specified using hash.
Examples:

  User.all :joins => :items, :conditions => { :age => 10, :items => { :color => 'black' } }
  Item.first :conditions => { :items => { :color => 'red' } }

Note : Hash key in :conditions is referring to the actual table name or the alias defined in query.
2008-06-28 01:27:51 +01:00
Tarmo Tänav
baddea95e1 Always treat integer :limit as byte length. [#420 state:resolved] 2008-06-22 20:42:31 -07:00
Daniel Morrison
3610997ba3 Partial updates don't update lock_version if nothing changed. [#426 state:resolved] 2008-06-22 20:33:43 -07:00
Mark Catley
0fd3e4cd2b Fix column collision with named_scope and :joins. [#46 state:resolved] 2008-06-22 19:21:15 -07:00
Michael Raidel
f94600bdaf ActiveRecord::Migrator#run records version-state after migrating. [#369 state:resolved] 2008-06-22 18:16:17 -07:00
Jeremy Kemper
43cbcb10ae nix extra newline 2008-06-22 16:22:23 -07:00
Jeremy Kemper
a73ac98123 Changelog for 509374e 2008-06-22 16:21:08 -07:00
Diego Algorta
2e1b56c937 MySQL: rename_column preserves default values. [#466 state:resolved] 2008-06-22 15:21:11 -07:00
Ben Munat
ddab9d7fdf Add :from option to calculations. [#397 state:resolved] 2008-06-11 18:07:57 -07:00
Jan De Poorter
7f140bbdda Add :validate option to associations. [#301 state:resolved]
Signed-off-by: Pratik Naik <pratiknaik@gmail.com>
2008-06-11 12:21:57 +01:00
Jeremy Kemper
03bf727219 PostgreSQL: use 'INSERT ... RETURNING id' for 8.2 and later. 2008-06-10 18:31:37 -07:00
David Heinemeier Hansson
3282bf3b50 Added SQL escaping for :limit and :offset in MySQL [Jonathan Wiess] 2008-06-01 09:15:11 -07:00
rick
6a975d6ca2 fix changelog conflict 2008-05-31 17:15:24 -07:00