Skip to content
Snippets Groups Projects
Commit 82f7f9f7 authored by Bryan BRANCOTTE's avatar Bryan BRANCOTTE
Browse files

bugfix when removing primers file

parent 6332c355
No related branches found
No related tags found
No related merge requests found
......@@ -81,15 +81,15 @@ class PCRModelForm(forms.ModelForm):
#
# super().__init__(initial=initial,instance=instance,*args, **kwargs)
def save(self, commit=True):
instance: SimulatorJob = super().save(commit=commit)
if not commit or self.cleaned_data['primers_file'] is None:
return instance
output_fp = instance.job_dir / insillyclo.main.DEFAULT_PCR_FILENAME
with open(output_fp, 'wb') as fh:
for chunk in self.cleaned_data['primers_file'].chunks():
fh.write(chunk)
return instance
# def save(self, commit=True):
# instance: SimulatorJob = super().save(commit=commit)
# if not commit or self.cleaned_data['primers_file'] is None:
# return instance
# output_fp = instance.job_dir / insillyclo.main.DEFAULT_PCR_FILENAME
# with open(output_fp, 'wb') as fh:
# for chunk in self.cleaned_data['primers_file'].chunks():
# fh.write(chunk)
# return instance
RestrictionEnzymeModelForm = modelform_factory(
......
......@@ -381,6 +381,10 @@ class SimulatorJob(models.Model):
shutil.copyfileobj(source, dest)
def run_insillyclo(self, request):
if self.primers_file.name:
primers_file = pathlib.Path(self.primers_file.name)
else:
primers_file = None
return insillyclo.simulator.compute_all(
observer=InSillyCloDjangoMessageObserver(
request=request,
......@@ -393,8 +397,8 @@ class SimulatorJob(models.Model):
gb_plasmids=self.genbank_dir.glob('**/*.gb'),
output_dir=self.results_dir,
data_source=insillyclo.data_source.DataSourceHardCodedImplementation(),
primers_file=self.primer_file,
primer_id_pairs=list(self.pcr_pairs),
primers_file=primers_file,
primer_id_pairs=list(self.pcr_pairs) if primers_file else None,
)
@property
......
0% Loading or .
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment