1
0
Fork 0
mirror of https://github.com/rails/rails.git synced 2022-11-09 12:12:34 -05:00
rails--rails/activerecord/test/models
Jon Leighton 0a12a5f816 Deprecate eager-evaluated scopes.
Don't use this:

    scope :red, where(color: 'red')
    default_scope where(color: 'red')

Use this:

    scope :red, -> { where(color: 'red') }
    default_scope { where(color: 'red') }

The former has numerous issues. It is a common newbie gotcha to do
the following:

    scope :recent, where(published_at: Time.now - 2.weeks)

Or a more subtle variant:

    scope :recent, -> { where(published_at: Time.now - 2.weeks) }
    scope :recent_red, recent.where(color: 'red')

Eager scopes are also very complex to implement within Active
Record, and there are still bugs. For example, the following does
not do what you expect:

    scope :remove_conditions, except(:where)
    where(...).remove_conditions # => still has conditions
2012-03-21 22:18:18 +00:00
..
admin Allow store to be a not null column. 2012-02-02 18:57:15 +00:00
admin.rb
aircraft.rb Refactoring test_has_many_with_pluralize_table_names_false test 2011-05-20 01:53:13 -05:00
arunit2_model.rb added test for #3732 2012-02-10 17:35:22 -05:00
author.rb Deprecate eager-evaluated scopes. 2012-03-21 22:18:18 +00:00
auto_id.rb
binary.rb
bird.rb Allow nested attributes in associations to update values in it's owner object. Fixes a regression from 3.0.x 2011-12-14 20:13:03 -06:00
book.rb
boolean.rb
bulb.rb Deprecate eager-evaluated scopes. 2012-03-21 22:18:18 +00:00
car.rb Deprecate eager-evaluated scopes. 2012-03-21 22:18:18 +00:00
categorization.rb Deprecate eager-evaluated scopes. 2012-03-21 22:18:18 +00:00
category.rb Deprecate eager-evaluated scopes. 2012-03-21 22:18:18 +00:00
citation.rb
club.rb Merge branch 'master' into nested_has_many_through 2011-03-04 09:30:27 +00:00
college.rb added test for #3732 2012-02-10 17:35:22 -05:00
column_name.rb
comment.rb Deprecate eager-evaluated scopes. 2012-03-21 22:18:18 +00:00
company.rb test_get_ids_for_ordered_association fixed 2012-01-31 18:16:48 +02:00
company_in_module.rb
computer.rb
contact.rb Raise error when using write_attribute with a non-existent attribute. 2011-09-13 00:01:58 +01:00
contract.rb Tests for issue #1360 2011-05-31 19:47:34 +01:00
country.rb Deprecate set_primary_key in favour of self.primary_key= 2011-11-29 20:13:37 +00:00
course.rb added test for #3732 2012-02-10 17:35:22 -05:00
customer.rb
dashboard.rb Deprecate set_primary_key in favour of self.primary_key= 2011-11-29 20:13:37 +00:00
default.rb
developer.rb Deprecate eager-evaluated scopes. 2012-03-21 22:18:18 +00:00
dog.rb Fix bug where reset_counters resets the wrong counter cache. 2012-01-16 19:06:45 -08:00
dog_lover.rb Fix bug where reset_counters resets the wrong counter cache. 2012-01-16 19:06:45 -08:00
edge.rb
electron.rb
engine.rb
entrant.rb
essay.rb
event.rb
eye.rb
face.rb
guid.rb
interest.rb
invoice.rb
item.rb
job.rb
joke.rb Deprecate set_table_name in favour of self.table_name= or defining your own method. 2011-11-29 20:13:36 +00:00
keyboard.rb Deprecate set_primary_key in favour of self.primary_key= 2011-11-29 20:13:37 +00:00
legacy_thing.rb Deprecate set_locking_column in favour of self.locking_column= 2011-11-29 20:13:37 +00:00
lesson.rb Fixing ordering of HABTM association deletion [#6191 state:resolved] 2011-02-04 19:39:59 -02:00
line_item.rb
liquid.rb Deprecate set_table_name in favour of self.table_name= or defining your own method. 2011-11-29 20:13:36 +00:00
man.rb
matey.rb
member.rb Don't use select() values from the join model of a through association. Fixes #508. 2011-05-11 08:56:01 +01:00
member_detail.rb
member_type.rb
membership.rb Don't use select() values from the join model of a through association. Fixes #508. 2011-05-11 08:56:01 +01:00
minimalistic.rb
minivan.rb Deprecate set_primary_key in favour of self.primary_key= 2011-11-29 20:13:37 +00:00
mixed_case_monkey.rb Deprecate set_primary_key in favour of self.primary_key= 2011-11-29 20:13:37 +00:00
molecule.rb
movie.rb
order.rb
organization.rb Deprecate eager-evaluated scopes. 2012-03-21 22:18:18 +00:00
owner.rb Deprecate set_primary_key in favour of self.primary_key= 2011-11-29 20:13:37 +00:00
parrot.rb Deprecate set_inheritance_column in favour of self.inheritance_column= 2011-11-29 20:13:36 +00:00
person.rb Deprecate eager-evaluated scopes. 2012-03-21 22:18:18 +00:00
pet.rb Deprecate set_primary_key in favour of self.primary_key= 2011-11-29 20:13:37 +00:00
pirate.rb Deprecated support for passing hashes and relations to default_scope, in favour of defining a 'default_scope' class method in the model. See the CHANGELOG for more details. 2011-04-12 19:46:04 -07:00
post.rb Deprecate eager-evaluated scopes. 2012-03-21 22:18:18 +00:00
price_estimate.rb
project.rb Deprecate eager-evaluated scopes. 2012-03-21 22:18:18 +00:00
randomly_named_c1.rb Test fixtures with custom model and table names 2011-12-30 10:34:01 +01:00
rating.rb Add a test for STI on the through where the through is nested, and change the code which support this 2011-03-05 20:10:24 +00:00
reader.rb Not need to pass join attributes to association build 2012-03-07 21:07:29 -03:00
reference.rb Deprecate eager-evaluated scopes. 2012-03-21 22:18:18 +00:00
reply.rb Deprecate eager-evaluated scopes. 2012-03-21 22:18:18 +00:00
ship.rb
ship_part.rb
shop.rb
speedometer.rb Deprecate set_primary_key in favour of self.primary_key= 2011-11-29 20:13:37 +00:00
sponsor.rb
string_key_object.rb Deprecate set_primary_key in favour of self.primary_key= 2011-11-29 20:13:37 +00:00
student.rb Fixing ordering of HABTM association deletion [#6191 state:resolved] 2011-02-04 19:39:59 -02:00
subject.rb
subscriber.rb Deprecate set_primary_key in favour of self.primary_key= 2011-11-29 20:13:37 +00:00
subscription.rb
tag.rb
tagging.rb oracle, y u defy me 2011-03-16 18:54:34 +00:00
task.rb
teapot.rb Support establishing connection on ActiveRecord::Model. 2011-12-28 18:27:41 +00:00
topic.rb Deprecate eager-evaluated scopes. 2012-03-21 22:18:18 +00:00
toy.rb Deprecate eager-evaluated scopes. 2012-03-21 22:18:18 +00:00
traffic_light.rb
treasure.rb
treaty.rb Deprecate set_primary_key in favour of self.primary_key= 2011-11-29 20:13:37 +00:00
tyre.rb
vertex.rb
warehouse_thing.rb Deprecate set_table_name in favour of self.table_name= or defining your own method. 2011-11-29 20:13:36 +00:00
wheel.rb
without_table.rb Deprecate eager-evaluated scopes. 2012-03-21 22:18:18 +00:00
zine.rb