about summary refs log tree commit diff
diff options
context:
space:
mode:
authorFrederick Muriuki Muriithi2025-03-21 15:03:37 -0500
committerFrederick Muriuki Muriithi2025-03-21 15:03:37 -0500
commit27f6e27d566d0628bffc3cc0cd061f8b1a039081 (patch)
treee2045653f7c9d4b1bd1b0f2be31766d0a8e1d8e8
parent19f24ba8cd4b574c58f84b3cad1a78ebd18f5cdb (diff)
downloadgn-uploader-27f6e27d566d0628bffc3cc0cd061f8b1a039081.tar.gz
Add "PubMed_ID" field
The "PubMed_ID" field allows the user to edit the publication that's
attached to each phenotype trait.
-rw-r--r--uploader/phenotypes/models.py7
-rw-r--r--uploader/phenotypes/views.py3
2 files changed, 7 insertions, 3 deletions
diff --git a/uploader/phenotypes/models.py b/uploader/phenotypes/models.py
index ce7720c..4a229e6 100644
--- a/uploader/phenotypes/models.py
+++ b/uploader/phenotypes/models.py
@@ -262,8 +262,11 @@ def phenotypes_data_by_ids(
 ) -> tuple[dict, ...]:
     """Fetch all phenotype data, filtered by the `inbred_pheno_xref` mapping."""
     _paramstr = ",".join(["(%s, %s, %s)"] * len(inbred_pheno_xref))
-    _query = ("SELECT pheno.*, pxr.*, pd.*, str.*, iset.InbredSetCode "
-              "FROM Phenotype AS pheno "
+    _query = ("SELECT "
+              "pub.PubMed_ID, pheno.*, pxr.*, pd.*, str.*, iset.InbredSetCode "
+              "FROM Publication AS pub "
+              "RIGHT JOIN PublishXRef AS pxr0 ON pub.Id=pxr0.PublicationId "
+              "INNER JOIN Phenotype AS pheno ON pxr0.PhenotypeId=pheno.id "
               "INNER JOIN PublishXRef AS pxr ON pheno.Id=pxr.PhenotypeId "
               "INNER JOIN PublishData AS pd ON pxr.DataId=pd.Id "
               "INNER JOIN Strain AS str ON pd.StrainId=str.Id "
diff --git a/uploader/phenotypes/views.py b/uploader/phenotypes/views.py
index 3d2ff76..a50a8e7 100644
--- a/uploader/phenotypes/views.py
+++ b/uploader/phenotypes/views.py
@@ -920,7 +920,8 @@ def edit_download_phenotype_data(# pylint: disable=[unused-argument]
                                             "Pre_publication_abbreviation",
                                             "Pre_publication_description",
                                             "Original_description",
-                                            "Post_publication_abbreviation"
+                                            "Post_publication_abbreviation",
+                                            "PubMed_ID"
                                         ] + samples_list,
                                         dialect="excel-tab")
                 writer.writeheader()