Django, данные почтовой формы не являются обязательными или получены при просмотре - PullRequest
0 голосов
/ 11 апреля 2020

Мой вид не получает и не привязывает данные из формы.

Цель страницы формы стандартная. Страница формы загружается без ошибок, пользователь вводит данные, если форма ошибок перезагружается с предыдущими пользовательскими данными и вызываются ошибки. Если форма действительна, она сохраняет данные в БД.

Я следовал документации Django Формы и прочитал потоки переполнения стека, но не смог достичь вышеуказанного поведения.

FORM.PY

from django import forms

class templateForm(forms.Form):
    TemplateName = forms.CharField(max_length=50)
    Descriptions = forms.CharField(initial="User Name & Date")
    Contents = forms.CharField(required= False, max_length=50, widget=forms.HiddenInput())
    CPU_Quantity = forms.IntegerField(initial=1)
    Memory_Quantity = forms.IntegerField(initial=12)

VIEWS.PY

class Add_Server_Template(View):

    def post (self, request):
       #If this is a POST then process the form data
       if request.method == 'POST':
            ### Binds user data to form
            form = templateForm(request.POST)
            if form.is_valid():
                # <process form cleaned data>
                model_instance = form.save(commit=False)
                model_instance.save()
                return render(request, "Server_Template/index.html", {'form': form})
            ### if form is not valid. Re-render form with user data.
            else:
                form = templateForm()

       return render(request, 'Server_Template/index.html', {'form': form})

URLS.PY

url(r'serverstructure/add/$', views.Add_Server_Template.as_view(), name='serverStructure-Add'),

ШАБЛОН

Configtempaltes . html

{% extends 'Server_Template/base.html' %}

{% block body %}
{% load bootstrap4 %}

<div class="container-fluid" >
    <div class="row">
      <div class="col-sm-4 col-sm-offset-1"  >
        <h3>Server Template</h3>
       </div>
    </div>
        <div class=".col-sm-1">
            <div class="panel-body">
               <!-- Render Edit/Add Form -->
                <form class = "form-horizontal" role="form" action ="" method="post" enctype="multipart/form-data">
                    {% csrf_token %}
                    <!-- Display form fields from Config Template Module -->
                    {% include 'Server_Template/form-template_dynamic.html' %}

                    <div class = "form-group">
                        <div class="col-sm-4 col-sm-offset-2"  >
                                <button type="submit" class="btn btn-success btn-sm" value="save">Submit</button>
                        </div>
                    </div>
                </form>
            </div>
        </div>

</div> <!-- Container -->
{% endblock %}>

form-template_dynami c. html

{% if form.errors %}
    <!-- Error messaging -->
    <div id="errors">
        <div class="inner">
            <p style="color:firebrick">There were some errors in the information you entered. Please correct the following:</p> </br>
        </div>
    </div>
    <!-- /Error messaging -->
{% endif %}

{%for field in form %}
     <div class = "row">
         <div class ="form-group">
         {% if field.errors %}
            <label class="control-label col-sm-2" for = "{{field.label}}"  style = "color:firebrick"> {{ field.label }} </label>
         {% else %}
             <label class="control-label col-sm-2" for = "{{field.label}}"> {{ field.label }} </label>
         {% endif %}
                <div class="input-group-append">
                    <div class="col-sm-3">
                       <input type="text" class="form-control" value="{{field.value}}"  id="{{field.label}}" name="{{field.label}}">
                    </div>
                </div>

         </div> <!-- form-group -->
     </div> <!-- Row -->
{%  endfor %}
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...