def test_field_validate_slug_names(self): form = Form.objects.create(title="Test") field = Field(form=form, label="First name", field_type=NAMES[0][0]) field.save() self.assertEqual(field.slug, 'first_name') field_2 = Field(form=form, label="First name", field_type=NAMES[0][0]) try: field_2.save() except IntegrityError: self.fail("Slugs were not auto-unique")
def test_field_validate_slug_length(self): max_slug_length = 2000 form = Form.objects.create(title="Test") field = Field(form=form, label='x' * (max_slug_length + 1), field_type=NAMES[0][0]) field.save() self.assertLessEqual(len(field.slug), max_slug_length)
def post(self, request): print(request.POST) form1 = CreateField(request.POST, prefix="1") context = { "no_of_fields": request.session["no_of_fields"] } namelist = [] argsdict = {} booltmp = True for i in range(0, request.session["no_of_fields"]): tmp = "form" + str(i) namelist.append(tmp) tmpform = CreateField(request.POST, prefix=tmp) argsdict[tmp] = tmpform if not tmpform.is_valid(): booltmp = False context["namelist"] = namelist context["argsdict"] = argsdict if booltmp is False: return render(request, self.template_name, context) for i in range(0, request.session["no_of_fields"]): tmp = "form" + str(i) tmpform = argsdict[tmp] label = tmpform.cleaned_data.get('label') field_type = tmpform.cleaned_data.get('field_type') required = tmpform.cleaned_data.get('required') default = tmpform.cleaned_data.get('default') placeholder_text = tmpform.cleaned_data.get('placeholder_text') help_text = tmpform.cleaned_data.get('help_text') choices = tmpform.cleaned_data.get('choices') f = Field() f.form = Form.objects.get(id=request.session["formid"]) f.label = label f.field_type = field_type f.required = required f.default = default f.placeholder_text = placeholder_text f.help_text = help_text f.choices = choices f.save() return redirect('forms:main')