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

add code to retrieve proteins information from PDB

Former-commit-id: 9a7b9355ed06b75a23904ec12e070237b5f477f1
parent 53ea44f6
No related branches found
No related tags found
No related merge requests found
...@@ -2,7 +2,10 @@ import ippidb ...@@ -2,7 +2,10 @@ import ippidb
from django.shortcuts import render from django.shortcuts import render
from django.http import HttpResponseRedirect from django.http import HttpResponseRedirect
from formtools.wizard.views import SessionWizardView,NamedUrlSessionWizardView from formtools.wizard.views import SessionWizardView,NamedUrlSessionWizardView
from .forms import IdForm, BibliographyForm, PDBForm, ProteinForm, ProteinDomainComplexTypeForm, ProteinDomainComplexForm, PpiForm from .forms import IdForm, BibliographyForm, PDBForm, ProteinForm, ProteinDomainComplexTypeForm, ProteinDomainComplexForm, PpiForm
from .models import Protein
from .ws import get_pdb_uniprot_mapping
def index(request): def index(request):
return render(request, 'index.html') return render(request, 'index.html')
...@@ -48,6 +51,19 @@ class IppiWizard(SessionWizardView): ...@@ -48,6 +51,19 @@ class IppiWizard(SessionWizardView):
if self.steps.current=='IdForm': if self.steps.current=='IdForm':
form.instance.autofill() form.instance.autofill()
self.instance_dict['BibliographyForm'] = form.instance self.instance_dict['BibliographyForm'] = form.instance
elif self.steps.current=='PDBForm':
uniprot_ids = get_pdb_uniprot_mapping(form.cleaned_data['pdb_id'])
proteins = []
for uniprot_id in uniprot_ids:
try:
p = Protein.objects.get(uniprot_id=uniprot_id)
except Protein.DoesNotExist:
p = Protein()
p.uniprot_id = uniprot_ids[0]
p.autofill()
proteins.append(p)
#TODO replace p with proteins as the instance_dict
self.instance_dict['ProteinForm'] = p
return self.get_form_step_data(form) return self.get_form_step_data(form)
def done(self, form_list, **kwargs): def done(self, form_list, **kwargs):
......
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