diff options
author | Frederick Muriuki Muriithi | 2025-04-25 12:09:23 -0500 |
---|---|---|
committer | Frederick Muriuki Muriithi | 2025-04-25 12:25:38 -0500 |
commit | a962991759349c152cfc03293f5ce413be9be9d2 (patch) | |
tree | b5a425d425933675c8e8d291fed086caed716b77 /uploader/samples/views.py | |
parent | c1ef845689ff6bc63ab0606d0e5d11e8d9b1b38a (diff) | |
download | gn-uploader-a962991759349c152cfc03293f5ce413be9be9d2.tar.gz |
Fix display of upload errors for samples
* Update the uri to fit in with existing paradigm
* Pass the species and population to the endpoint
Diffstat (limited to 'uploader/samples/views.py')
-rw-r--r-- | uploader/samples/views.py | 19 |
1 files changed, 15 insertions, 4 deletions
diff --git a/uploader/samples/views.py b/uploader/samples/views.py index 27e5d3c..c0adb88 100644 --- a/uploader/samples/views.py +++ b/uploader/samples/views.py @@ -221,7 +221,10 @@ def upload_status(species: dict, population: dict, job_id: uuid.UUID, **kwargs): if status == "error": return redirect(url_for( - "species.populations.samples.upload_failure", job_id=job_id)) + "species.populations.samples.upload_failure", + species_id=species["SpeciesId"], + population_id=population["Id"], + job_id=job_id)) error_filename = Path(jobs.error_filename( job_id, f"{app.config['UPLOAD_FOLDER']}/job_errors")) @@ -241,9 +244,14 @@ def upload_status(species: dict, population: dict, job_id: uuid.UUID, **kwargs): species=species, population=population), 400 -@samplesbp.route("/upload/failure/<uuid:job_id>", methods=["GET"]) + +@samplesbp.route("<int:species_id>/populations/<int:population_id>/" + "upload-samples/failure/<uuid:job_id>", + methods=["GET"]) @require_login -def upload_failure(job_id: uuid.UUID): +@with_population(species_redirect_uri="species.populations.samples.index", + redirect_uri="species.populations.samples.select_population") +def upload_failure(species: dict, population: dict, job_id: uuid.UUID, **kwargs): """Display the errors of the samples upload failure.""" job = with_redis_connection(lambda rconn: jobs.job( rconn, jobs.jobsnamespace(), job_id)) @@ -257,4 +265,7 @@ def upload_failure(job_id: uuid.UUID): if stat.st_size > 0: return render_template("worker_failure.html", job_id=job_id) - return render_template("samples/upload-failure.html", job=job) + return render_template("samples/upload-failure.html", + species=species, + population=population, + job=job) |