diff --git a/assets/index.js b/assets/index.js index e5280ff..3f3a556 100644 --- a/assets/index.js +++ b/assets/index.js @@ -87,3 +87,8 @@ $fileUploadContainer.on('click', '.file-upload-remove-btn', function($evt) { var $btn = $(this) $btn.parent('.file-upload-widget').remove() }) + +$fileUploadContainer.on('click', '.existing-file-remove-btn', function($evt) { + var $btn = $(this) + $btn.parent('.existing-file-widget').remove() +}) diff --git a/projects/forms.py b/projects/forms.py index 50032e7..9952a37 100644 --- a/projects/forms.py +++ b/projects/forms.py @@ -15,7 +15,12 @@ class ProjectsForm(forms.Form): class CustomerProjectEditForm(forms.ModelForm): - files = forms.ModelMultipleChoiceField(queryset=ProjectFile.objects.none(), required=False) + files = forms.ModelMultipleChoiceField( + queryset=ProjectFile.objects.none(), + widget=forms.CheckboxSelectMultiple, + required=False, + ) + specialization = TreeNodeChoiceField(queryset=Specialization.objects.exclude(id=1)) class Meta: diff --git a/projects/migrations/0035_auto_20160630_1635.py b/projects/migrations/0035_auto_20160630_1635.py new file mode 100644 index 0000000..93c81f0 --- /dev/null +++ b/projects/migrations/0035_auto_20160630_1635.py @@ -0,0 +1,30 @@ +# -*- coding: utf-8 -*- +# Generated by Django 1.9.6 on 2016-06-30 13:35 +from __future__ import unicode_literals + +from django.db import migrations, models +import django.db.models.deletion + + +class Migration(migrations.Migration): + + dependencies = [ + ('projects', '0034_auto_20160622_1200'), + ] + + operations = [ + migrations.AlterModelOptions( + name='buildingclassfication', + options={'verbose_name': 'Тип здания', 'verbose_name_plural': 'Типы зданий'}, + ), + migrations.AlterField( + model_name='project', + name='work_type', + field=models.IntegerField(choices=[(1, 'Проектирование'), (2, 'Техническое сопровождение')], default=1), + ), + migrations.AlterField( + model_name='projectfile', + name='project', + field=models.ForeignKey(blank=True, null=True, on_delete=django.db.models.deletion.CASCADE, related_name='files', to='projects.Project'), + ), + ] diff --git a/projects/models.py b/projects/models.py index f4513ee..dd3b36e 100644 --- a/projects/models.py +++ b/projects/models.py @@ -103,7 +103,7 @@ class Project(models.Model): class ProjectFile(models.Model): file = models.FileField(upload_to='projects/project_files') - project = models.ForeignKey(Project, related_name='files') + project = models.ForeignKey(Project, related_name='files', blank=True, null=True) class Meta: verbose_name = 'Файл проекта' diff --git a/projects/templates/customer_project_create.html b/projects/templates/customer_project_create.html index 2765a5f..3823574 100644 --- a/projects/templates/customer_project_create.html +++ b/projects/templates/customer_project_create.html @@ -276,7 +276,6 @@ -{# #} {# {% if back %}Назад{% endif %}#} diff --git a/projects/templates/customer_project_edit.html b/projects/templates/customer_project_edit.html index 7c48e46..2523b5c 100644 --- a/projects/templates/customer_project_edit.html +++ b/projects/templates/customer_project_edit.html @@ -43,11 +43,10 @@
Произошла ошибка (form)
' + '{form}'
+ ).format(form=pformat(form.errors)))
- messages.info(request, 'Произошла ошибка: {msg}'.format(msg=pformat(form.errors)))
+ if realty_form and realty_form.errors:
+ messages.info(request, (
+ 'Произошла ошибка (realty_form)
' + '{realty_form}'
+ ).format(realty_form=pformat(realty_form.errors)))
+
+ context = self.get_context_data(**kwargs)
+ context.update({'form': form, 'realty_form': realty_form})
return render(request, self.template_name, context)
else:
return HttpResponseForbidden('403 Forbidden')