Skip to content

Fix crash during CSV export of harvests and seeds - #4609

Merged
CloCkWeRX merged 2 commits into
devfrom
fix-csv-export-crash-4991917409830119333
May 2, 2026
Merged

CloCkWeRX merged 2 commits into
devfrom
fix-csv-export-crash-4991917409830119333

Conversation

@CloCkWeRX

Copy link
Copy Markdown
Collaborator

The CSV export for harvests, seeds, and crops was crashing because it used Searchkick with load: false, which returns hash-like objects instead of ActiveRecord instances. The export templates (shapshers) were attempting to access model associations and use Rails URL helpers with these objects, causing ActionView::Template::Error and No route matches errors.

Changes:

  • Modified HarvestsController, SeedsController, and CropsController to use load: true (with appropriate preloading) only when CSV format is requested.
  • Fixed a typo (c.seeds.size[]) in app/views/crops/index.csv.shaper.
  • Ensured consistent behavior across data export controllers.

This approach prevents the crash while maintaining high performance for standard HTML/JSON search requests.


PR created automatically by Jules for task 4991917409830119333 started by @CloCkWeRX

When using Searchkick with `load: false`, search results are returned
as HashResponse objects which do not support model associations or
standard Rails URL helpers that expect model instances.

This commit updates HarvestsController and SeedsController to
conditionally load ActiveRecord objects when CSV format is requested,
ensuring that the export templates can access the necessary associations.
Similar logic was also applied to CropsController.

Additionally, a typo in the Crops CSV shaper was fixed.

Co-authored-by: CloCkWeRX <[email protected]>
@google-labs-jules

Copy link
Copy Markdown
Contributor

👋 Jules, reporting for duty! I'm here to lend a hand with this pull request.

When you start a review, I'll add a 👀 emoji to each comment to let you know I've read it. I'll focus on feedback directed at me and will do my best to stay out of conversations between you and other bots or reviewers to keep the noise down.

I'll push a commit with your requested changes shortly after. Please note there might be a delay between these steps, but rest assured I'm on the job!

For more direct control, you can switch me to Reactive Mode. When this mode is on, I will only act on comments where you specifically mention me with @jules. You can find this option in the Pull Request section of your global Jules UI settings. You can always switch back!

New to Jules? Learn more at jules.google/docs.


For security, I will only act on instructions from the user who triggered this task.

@CloCkWeRX
CloCkWeRX merged commit 1281795 into dev May 2, 2026
15 of 16 checks passed
@CloCkWeRX
CloCkWeRX deleted the fix-csv-export-crash-4991917409830119333 branch May 2, 2026 05:12
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

1 participant