Skip to content
Snippets Groups Projects
Commit f79427c3 authored by Hervé  MENAGER's avatar Hervé MENAGER
Browse files

create Symmetry table initial contents

(closes #9)
parent 8a93ac1c
No related branches found
No related tags found
No related merge requests found
No preview for this file type
......@@ -28,6 +28,10 @@ class ProteinDomainPartnerComplexAdmin(admin.ModelAdmin):
list_display = ('protein_id', 'domain_id', 'ppc_copy_nb')
list_display_links = ('protein_id', 'domain_id', 'ppc_copy_nb')
@admin.register(Symmetry)
class Symmetry(admin.ModelAdmin):
list_display = ('code', 'description')
for model in apps.get_app_config('ippidb').models.values():
try:
admin.site.register(model)
......
......@@ -2,7 +2,7 @@ from django.core.management import BaseCommand, CommandError
import mysql.connector
from ippidb.models import Bibliography, Protein, Taxonomy, MolecularFunction, \
Domain, ProteinDomainBoundComplex, ProteinDomainPartnerComplex
Domain, ProteinDomainBoundComplex, ProteinDomainPartnerComplex, Symmetry
class Command(BaseCommand):
......@@ -37,6 +37,13 @@ class Command(BaseCommand):
default=False,
help='Flush and migrate complexes',
)
parser.add_argument(
'--symmetries',
action='store_true',
dest='symmetries',
default=False,
help='Flush and create symmetries',
)
parser.add_argument(
'--stoponfail',
action='store_true',
......@@ -142,3 +149,33 @@ class Command(BaseCommand):
self.stdout.write(self.style.ERROR('Failed inserting {} {}'.format(row[0], row[1])))
else:
self.stdout.write(self.style.SUCCESS('Successfully inserted {} {}'.format(row[0], row[1])))
if options['symmetries']:
Symmetry.objects.all().delete()
self.stdout.write(self.style.SUCCESS('Successfully flushed symmetries table'))
rows = [
['AS', 'asymmetric'],
['C2', 'C2 symmetry'],
['D2', 'D2 symmetry'],
['C3', 'C3 symmetry'],
['D3', 'D3 symmetry'],
['C4', 'C4 symmetry'],
['D4', 'D4 symmetry'],
['C5', 'C5 symmetry'],
['D5', 'D5 symmetry'],
]
for row in rows:
try:
symmetry = Symmetry()
symmetry.code = row[0]
symmetry.description = row[1]
symmetry.save()
except Exception as e:
if options['stoponfail']:
import traceback
self.stderr.write(traceback.format_exc())
raise CommandError('Failed inserting {} {}'.format(row[0], row[1]))
else:
self.stdout.write(self.style.ERROR('Failed inserting {} {}'.format(row[0], row[1])))
else:
self.stdout.write(self.style.SUCCESS('Successfully inserted {} {}'.format(row[0], row[1])))
0% or .
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment