5ac17fb2fa
Manually create todo for issuable ## What does this MR do? Adds a button to the sidebar in issues & merge requests to allow users to manually create a todo item themselves. ## What are the relevant issue numbers? Closes #15045 ## Screenshots (if relevant) ![Screen_Shot_2016-06-07_at_09.52.14](/uploads/00af70244c0589d19f241c3e85f3d63d/Screen_Shot_2016-06-07_at_09.52.14.png) ![Screen_Shot_2016-06-07_at_09.52.06](/uploads/e232b02208613a4a50cff4d1e6f119ff/Screen_Shot_2016-06-07_at_09.52.06.png) ![Screen_Shot_2016-06-07_at_09.51.14](/uploads/f1d36435d49ab882538ae2252bec8086/Screen_Shot_2016-06-07_at_09.51.14.png) See merge request !4502 |
||
---|---|---|
.. | ||
contributed_projects_finder.rb | ||
group_projects_finder.rb | ||
groups_finder.rb | ||
issuable_finder.rb | ||
issues_finder.rb | ||
joined_groups_finder.rb | ||
merge_requests_finder.rb | ||
milestones_finder.rb | ||
notes_finder.rb | ||
personal_projects_finder.rb | ||
pipelines_finder.rb | ||
projects_finder.rb | ||
README.md | ||
snippets_finder.rb | ||
todos_finder.rb | ||
trending_projects_finder.rb | ||
union_finder.rb |
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.