2013-11-24 7 views
0

Я очень новичок в django framework. У меня есть шаблон, где у меня есть форма. Просто я просто хочу сделать валидацию в этой форме, где она проверит поле, пустое поле или нет. .Если он пуст, он покажет инструкцию для проверки чего-то вроде «Обязательное поле остается пустым». Теперь, как я могу сделать валидацию? вот мой form.py файлПроверка формы в django

from django import forms 
from django.core.exceptions import ValidationError 
from request.models import Request 

class SubreqForm(forms.Form): 
    request = forms.CharField(max_length=100) 
    category = forms.CharField(max_length=100) 
    sub_category = forms.CharField(max_length=100) 

и это мое мнение (вы можете изменить вид)

class SubmitRequestsTemplateView(TemplateView): 
template_name = "rest/submit_req.html" 
def get(self,request,*args,**kwargs): 
    c = {} 
    c.update(csrf(request)) 

    return render_to_response("rest/submit_req.html", context_instance=RequestContext(request)) 

и это мой шаблон ... (только форма)

    <div class="form-group"> 
         <label class="col-lg-3 control-label" for="inputText">Request</label> 
         <div class="col-lg-8"> 
          <input id="inputText" class="form-control" type="Text" placeholder="Request Name" ng-model="request.name"></input> 
         </div> 
        <br /> 
        <br /> 
        </div> 
        <div class="form-group"> 
         <label for="id_category" class="col-lg-3 control-label">Category</label> 
         <div class="col-lg-8"> 
          <select class="form-control" id="id_category" ng-model="selectedCategory" ng-options="cat.pk as cat.name for cat in category"> 
           <option value="">Select Category</option> 
          </select> 
         </div> 
        </div> 

        <div class="form-group"> 
         <label for="id_subcategory" class="col-lg-3 control-label">Sub-Category</label> 
         <div class="col-lg-8"> 
          <select class="form-control" id="id_subcategory" ng-model="selectedSubCategory" ng-options="subcat.id as subcat.name for subcat in subcategory"> 
          <option value="">Select SubCategory</option> 
          </select> 

         </div> 
        </div> 
        <div> 
         <center> 
          <button type="submit" class="btn btn-primary" ng-click="addRequest()">Add Request</button> 
         </center> 
        </div> 
       </form> 

сейчас как я могу проверить свою форму? пожалуйста помогите.

+1

https://docs.djangoproject.com/en/dev/ref/forms/validation/ – ndpu

+0

Если вы хотите проверить пустое поле/не пустое, просто добавьте или удалите обязательное = True в поле формы. –

ответ

0

Ваше представление не настроено для обработки каких-либо форм. Как вы его кодировали, TemplateView ответит только на GET, поэтому, когда ваша форма отправит POST, ничего не произойдет.

Посмотрите на общий CreateViewdocumentation.

Кроме того, если вы собираетесь вручную визуализировать свою форму вместо того, чтобы сделать Django (form.as_p), вам также понадобится manually render any errors, которого я не вижу в вашем шаблоне выше.

Смежные вопросы