Skip to content
GitLab
Explore
Sign in
Primary navigation
Search or go to…
Project
metagenedb
Manage
Activity
Members
Labels
Plan
Wiki
Code
Merge requests
Repository
Branches
Commits
Tags
Repository graph
Compare revisions
Snippets
Build
Pipelines
Jobs
Pipeline schedules
Artifacts
Deploy
Releases
Container registry
Model registry
Operate
Environments
Analyze
Value stream analytics
Contributor analytics
CI/CD analytics
Repository analytics
Model experiments
Help
Help
Support
GitLab documentation
Compare GitLab plans
Community forum
Contribute to GitLab
Provide feedback
Keyboard shortcuts
?
Snippets
Groups
Projects
Show more breadcrumbs
Metagenomics
metagenedb
Commits
61a3b8ad
Commit
61a3b8ad
authored
6 years ago
by
Kenzo-Hugo Hillion
Browse files
Options
Downloads
Patches
Plain Diff
Use utils method to extract many to many fields
parent
da92c961
No related branches found
No related tags found
1 merge request
!3
Integrate taxonomy to database
Changes
1
Hide whitespace changes
Inline
Side-by-side
Showing
1 changed file
backend/scripts/populate_db/import_igc_data.py
+6
-5
6 additions, 5 deletions
backend/scripts/populate_db/import_igc_data.py
with
6 additions
and
5 deletions
backend/scripts/populate_db/import_igc_data.py
+
6
−
5
View file @
61a3b8ad
...
@@ -8,6 +8,8 @@ from itertools import islice
...
@@ -8,6 +8,8 @@ from itertools import islice
import
django
import
django
from
django.core.exceptions
import
ValidationError
from
django.core.exceptions
import
ValidationError
from
metagenedb.utils.dict_operations
import
extract_dict
# Before model import, we need to called django.setup() to Load apps
# Before model import, we need to called django.setup() to Load apps
os
.
environ
.
setdefault
(
"
DJANGO_SETTINGS_MODULE
"
,
"
metagenedb.settings
"
)
os
.
environ
.
setdefault
(
"
DJANGO_SETTINGS_MODULE
"
,
"
metagenedb.settings
"
)
django
.
setup
()
django
.
setup
()
...
@@ -57,20 +59,19 @@ def link_to_function(obj_gene, gene_dict):
...
@@ -57,20 +59,19 @@ def link_to_function(obj_gene, gene_dict):
def
insert_gene
(
gene_dict
):
def
insert_gene
(
gene_dict
):
MANY_TO_MANY_FIELDS
=
[
'
kegg_ko
'
]
MANY_TO_MANY_FIELDS
=
[
'
kegg_ko
'
]
many_to_many_elements
=
extract_dict
(
gene_dict
,
MANY_TO_MANY_FIELDS
)
try
:
try
:
obj_gene
=
Gene
.
objects
.
get
(
gene_id
=
gene_dict
.
get
(
'
gene_id
'
))
obj_gene
=
Gene
.
objects
.
get
(
gene_id
=
gene_dict
.
get
(
'
gene_id
'
))
for
key
,
value
in
gene_dict
.
items
():
for
key
,
value
in
gene_dict
.
items
():
if
key
not
in
MANY_TO_MANY_FIELDS
:
setattr
(
obj_gene
,
key
,
value
)
setattr
(
obj_gene
,
key
,
value
)
except
Gene
.
DoesNotExist
:
except
Gene
.
DoesNotExist
:
obj_gene
=
Gene
(
gene_id
=
gene_dict
.
get
(
'
gene_id
'
),
obj_gene
=
Gene
(
gene_id
=
gene_dict
.
get
(
'
gene_id
'
),
gene_length
=
gene_dict
.
get
(
'
gene_length
'
))
gene_length
=
gene_dict
.
get
(
'
gene_length
'
))
obj_gene
.
full_clean
()
obj_gene
.
full_clean
()
obj_gene
.
save
()
obj_gene
.
save
()
# Add link to KEGG
# Add link to KEGG
if
gene_dict
.
get
(
'
kegg_ko
'
)
!=
'
unknown
'
:
if
many_to_many_elements
.
get
(
'
kegg_ko
'
)
!=
'
unknown
'
:
link_to_function
(
obj_gene
,
gene_dict
)
link_to_function
(
obj_gene
,
many_to_many_elements
)
def
insert_gene_list
(
chunk_genes
):
def
insert_gene_list
(
chunk_genes
):
...
...
This diff is collapsed.
Click to expand it.
Preview
0%
Loading
Try again
or
attach a new file
.
Cancel
You are about to add
0
people
to the discussion. Proceed with caution.
Finish editing this message first!
Save comment
Cancel
Please
register
or
sign in
to comment