Add item filter to donations index page #5492
Open
+50
−2
Add this suggestion to a batch that can be applied as a single commit.
This suggestion is invalid because no changes were made to the code.
Suggestions cannot be applied while the pull request is closed.
Suggestions cannot be applied while viewing a subset of changes.
Only one suggestion per line can be applied in a batch.
Add this suggestion to a batch that can be applied as a single commit.
Applying suggestions on deleted lines is not supported.
You must change the existing code in this line in order to create a valid suggestion.
Outdated suggestions cannot be applied.
This suggestion has been applied or marked resolved.
Suggestions cannot be applied from pending reviews.
Suggestions cannot be applied on multi-line comments.
Suggestions cannot be applied while the pull request is queued to merge.
Suggestion cannot be applied right now. Please check back later.
Summary
by_item_idandby_item_category_idscopes to theDonationmodel, mirroring the existing scopes onDistributionfilter_selecthelperDonationsController#filter_paramsandView::Donations.filter_paramsCloses #5105
Approach
Followed the pattern established by the Distribution model's
by_item_idscope (line 54 ofdistribution.rb) and the Distribution index page's item filter dropdown. TheFilterableconcern'sclass_filtermethod handles scope chaining automatically.Files changed
app/models/donation.rbby_item_idandby_item_category_idscopesapp/models/view/donations.rbitemsto Data.define, permit new filter params, addselected_itemaccessorapp/controllers/donations_controller.rb:by_item_idand:by_item_category_idinfilter_paramsapp/views/donations/index.html.erbspec/models/donation_spec.rbby_item_idandby_item_category_idspec/system/donation_system_spec.rbTest plan
by_item_idreturns only donations containing the specified itemby_item_category_idreturns only donations with items in the specified categoryclass_filter)