- 22 1月, 2014 1 次提交
-
-
由 Rafael Mendonça França 提交于
Since Rails 4.0, we add an ORDER BY in the `first` method to ensure consistent results among different database engines. But for singular associations this behavior is not needed since we will have one record to return. As this ORDER BY option can lead some performance issues we are removing it for singular associations accessors. Fixes #12623.
-
- 23 12月, 2013 1 次提交
-
-
由 Paul Nikitochkin 提交于
Fixes: #13445
-
- 18 12月, 2013 1 次提交
-
-
由 Jeremy Kemper 提交于
-
- 29 11月, 2013 1 次提交
-
-
由 Kuldeep Aggarwal 提交于
removed unnecessary test case and improved test case for belongs_to having invalid options
-
- 29 7月, 2013 1 次提交
-
-
由 Akira Matsuda 提交于
-
- 05 7月, 2013 2 次提交
-
-
由 Paul Nikitochkin 提交于
if belongs to model with touch option on touch Closes #11288
-
由 Paul Nikitochkin 提交于
simplified logic to calculate number of queries by using assert_queries
-
- 03 6月, 2013 1 次提交
-
-
由 Vipul A M 提交于
-
- 07 5月, 2013 1 次提交
-
-
由 Ben Tucker 提交于
counter cache At present, calling destroy multiple times on the same record results in the belongs_to counter cache being decremented multiple times. With this change the record is checked for whether it is already destroyed prior to decrementing the counter cache.
-
- 08 3月, 2013 1 次提交
-
-
由 Anupam Choudhury 提交于
-
- 07 3月, 2013 1 次提交
-
-
由 Anupam Choudhury 提交于
-
- 04 1月, 2013 2 次提交
-
-
由 Jason Stirk 提交于
This commit fixes a bug introduced in 96a13fc7 which breaks behaviour of integer fields. In 3.2.8, setting the value of an integer field to a non-integer (eg. Array, Hash, etc.) would default to 1 (true) : # 3.2.8 p = Post.new p.category_id = [ 1, 2 ] p.category_id # => 1 p.category_id = { 3 => 4 } p.category_id # => 1 In 3.2.9 and above, this will raise a NoMethodError : # 3.2.9 p = Post.new p.category_id = [ 1, 2 ] NoMethodError: undefined method `to_i' for [1, 2]:Array Whilst at first blush this appear to be sensible, it combines in bad ways with scoping. For example, it is common to use scopes to control access to data : @collection = Posts.where(:category_id => [ 1, 2 ]) @new_post = @collection.new In 3.2.8, this would work as expected, creating a new Post object (albeit with @new_post.category_id = 1). However, in 3.2.9 this will cause the NoMethodError to be raised as above. It is difficult to avoid triggering this error without descoping before calling .new, breaking any apps running on 3.2.8 that rely on this behaviour. This patch deviates from 3.2.8 in that it does not retain the somewhat spurious behaviour of setting the attribute to 1. Instead, it explicitly sets these invalid values to nil : p = Post.new p.category_id = [ 1, 2 ] p.category_id # => nil This also fixes the situation where a scope using an array will "pollute" any newly instantiated records. @new_post = @collection.new @new_post.category_id # => nil Finally, 3.2.8 exhibited a behaviour where setting an object to an integer field caused it to be coerced to "1". This has not been retained, as it is spurious and surprising in the same way that setting Arrays and Heshes was : c = Category.find(6) p = Post.new # 3.2.8 p.category_id = c p.category_id # => 1 # This patch p.category_id = c p.category_id # => nil This commit includes explicit test cases that expose the original issue with calling new on a scope that uses an Array. As this is a common situation, an explicit test case is the best way to prevent regressions in the future. It also updates and separates existing tests to be explicit about the situation that is being tested (eg. AR objects vs. other objects vs. non-integers)
-
-
- 02 1月, 2013 1 次提交
-
-
由 Rafael Mendonça França 提交于
-
- 29 11月, 2012 2 次提交
-
-
由 Carlos Antonio da Silva 提交于
-
由 Jason Rush 提交于
Allows you to do BaseClass.new(:type => "SubClass") as well as parent.children.build(:type => "SubClass") or parent.build_child to initialize an STI subclass. Ensures that the class name is a valid class and that it is in the ancestors of the super class that the association is expecting.
-
- 11 8月, 2012 1 次提交
-
-
由 Jon Leighton 提交于
Method compilation provides better performance and I think the code comes out cleaner as well. A knock on effect is that methods that get redefined produce warnings. I think this is a good thing. I had to deal with a bunch of warnings coming from our tests, though.
-
- 28 7月, 2012 1 次提交
-
-
由 Jon Leighton 提交于
It doesn't serve much purpose now that ActiveRecord::Base.all returns a Relation. The code is moved to active_record_deprecated_finders.
-
- 27 7月, 2012 1 次提交
-
-
由 Jon Leighton 提交于
Previously it returned an Array. If you want an array, call e.g. `Post.to_a` rather than `Post.all`. This is more explicit. In most cases this should not break existing code, since Relations use method_missing to delegate unknown methods to #to_a anyway.
-
- 25 7月, 2012 1 次提交
-
-
由 Rafael Mendonça França 提交于
Closes #1190
-
- 13 7月, 2012 1 次提交
-
-
由 Jon Leighton 提交于
-
- 18 5月, 2012 1 次提交
-
-
由 Jon Leighton 提交于
-
- 27 4月, 2012 4 次提交
-
-
由 Jon Leighton 提交于
-
由 Jon Leighton 提交于
-
由 Jon Leighton 提交于
-
由 Jon Leighton 提交于
-
- 25 4月, 2012 1 次提交
-
-
由 Jon Leighton 提交于
-
- 13 4月, 2012 1 次提交
-
-
由 kennyj 提交于
-
- 04 4月, 2012 1 次提交
-
-
由 kennyj 提交于
-
- 26 9月, 2011 1 次提交
-
-
由 Jon Leighton 提交于
Closes #3104.
-
- 06 9月, 2011 1 次提交
-
-
由 Georg Friedrich 提交于
-
- 12 7月, 2011 1 次提交
-
-
由 Jon Leighton 提交于
-
- 09 7月, 2011 1 次提交
-
-
由 Jon Leighton 提交于
Ensure that the foreign key gets set when doing record.create_association or record.create_association. Fixes #1960.
-
- 07 6月, 2011 1 次提交
-
-
由 Aaron Patterson 提交于
-
- 05 6月, 2011 1 次提交
-
-
由 Jon Leighton 提交于
Refactor Active Record test connection setup. Please see the RUNNING_UNIT_TESTS file for details, but essentially you can now configure things in test/config.yml. You can also run tests directly via the command line, e.g. ruby path/to/test.rb (no rake needed, uses default db connection from test/config.yml). This will help us fix the CI by enabling us to isolate the different Rails versions to different databases.
-
- 04 6月, 2011 1 次提交
-
-
由 ganesh 提交于
-
- 21 5月, 2011 1 次提交
-
-
由 thedarkone 提交于
-
- 18 5月, 2011 1 次提交
-
-
由 Andrew White 提交于
-
- 02 5月, 2011 1 次提交
-
-
由 Aaron Patterson 提交于
-
- 01 5月, 2011 1 次提交
-
-
由 Aaron Patterson 提交于
-