Files
gitlabhq/app/finders
Robert Speicher ed2a8ba600 Merge 8-2-stable into 8-2-stable-ee
Conflicts remaining:

- app/controllers/groups/group_members_controller.rb
- app/controllers/projects/project_members_controller.rb
- app/models/ability.rb
- app/models/member.rb
- app/models/project.rb
2015-11-19 10:33:18 -05:00
..
2015-10-19 11:46:22 +02:00
2015-02-06 10:21:48 -08:00

Finders

This type of classes responsible for collection items based on different conditions. To prevent lookup methods in models like this:

class Project
  def issues_for_user_filtered_by(user, filter)
    # A lot of logic not related to project model itself
  end
end

issues = project.issues_for_user_filtered_by(user, params)

Better use this:

issues = IssuesFinder.new(project, user, filter).execute

It will help keep models thiner.