Контекст шаблона Django не будет отображаться - PullRequest
0 голосов
/ 07 марта 2019

Привет. Я пытаюсь создать приложение для отправки формы, которое просто отображает введенную информацию пользователю под формой, которую он отправил.К сожалению, я не могу загрузить контекст внешнего интерфейса в шаблоне.

Template:

В форме вы увидите цикл for, который должен повторятьсяконтекст, но ничего не отображается.Я попробовал это только с электронной почтой, но это не работает.

<!DOCTYPE html>
<html>
<head>
	<title>Form Practice</title>
	<link rel="stylesheet" href="https://stackpath.bootstrapcdn.com/bootstrap/4.3.1/css/bootstrap.min.css" integrity="sha384-ggOyR0iXCbMQv3Xipma34MD+dH/1fQ784/j6cY/iJTQUOhcWr7x9JvoRxT2MZw1T" crossorigin="anonymous">
</head>
<body>

<div class="container">
	<div class="row">
		<div class="col-md-2"></div>
		<div class="col-md-8">
		<form style="margin-top: 600px;" method="post" action="/form">
        {% csrf_token %}
			<div class="form-group row">
    <label for="inputEmail3" class="col-sm-2 col-form-label" >Email</label>
    <div class="col-sm-10">
      <input type="email" class="form-control" id="inputEmail3" placeholder="Email" name="email">
    </div>
  </div>
  <div class="form-group row">
    <label for="inputPassword3" class="col-sm-2 col-form-label" >Password</label>
    <div class="col-sm-10">
      <input type="password" class="form-control" id="inputPassword3" name="password" placeholder="Password">
    </div>
  </div>
  <fieldset class="form-group">
    <div class="row">
      <legend class="col-form-label col-sm-2 pt-0">Radios</legend>
      <div class="col-sm-10">
        <div class="form-check">
          <input class="form-check-input" type="radio" name="gridRadios" id="gridRadios1" value="option1" checked>
          <label class="form-check-label" for="gridRadios1">
            First radio
          </label>
        </div>
        <div class="form-check">
          <input class="form-check-input" type="radio" name="gridRadios" id="gridRadios2" value="option2">
          <label class="form-check-label" for="gridRadios2">
            Second radio
          </label>
        </div>

      </div>
    </div>
  </fieldset>

<div class="custom-control custom-checkbox">
  <input type="checkbox" class="custom-control-input" id="customCheck1" name="check">
  <label class="custom-control-label" for="customCheck1">Check this custom checkbox</label>
</div>
  <select class="custom-select mr-sm-2 custom-select-lg mb-3" name="select" id="inlineFormCustomSelect">
        <option selected>Choose...</option>
        <option value="1">One</option>
        <option value="2">Two</option>
        <option value="3">Three</option>
      </select>

      <div class="custom-control custom-radio">
  <input type="radio" id="customRadio1" name="customRadio" class="custom-control-input">
  <label class="custom-control-label" for="customRadio1">Toggle this custom radio</label>
</div>
<div class="custom-control custom-radio">
  <input type="radio" id="customRadio2" name="customRadio" class="custom-control-input">
  <label class="custom-control-label" for="customRadio2">Or toggle this other custom radio</label>
</div>

<div class="custom-file">
  <input type="file" class="custom-file-input" name="customFile" id="customFile">
  <label class="custom-file-label" for="customFile">Choose file</label>
</div>



		  <button type="submit" class="btn-block btn btn-primary my-1">Submit</button>
		</form>
            {% for item in context %}
                <h1>{{ item.email }}</h1>

            {% endfor %}
		</div>
		<div class="col-md-2"></div>


	</div>
</div>

<script src="https://code.jquery.com/jquery-3.3.1.slim.min.js" integrity="sha384-q8i/X+965DzO0rT7abK41JStQIAqVgRVzpbzo5smXKp4YfRvH+8abtTE1Pi6jizo" crossorigin="anonymous"></script>
<script src="https://cdnjs.cloudflare.com/ajax/libs/popper.js/1.14.7/umd/popper.min.js" integrity="sha384-UO2eT0CpHqdSJQ6hJty5KVphtPhzWj9WO1clHTMGa3JDZwrnQq4sF86dIHNDz0W1" crossorigin="anonymous"></script>
<script src="https://stackpath.bootstrapcdn.com/bootstrap/4.3.1/js/bootstrap.min.js" integrity="sha384-JjSmVgyd0p3pXB1rRibZUAYoIIy6OrQ6VrjIEaFf/nJGzIxFDsf4x0xIM+B07jRM" crossorigin="anonymous"></script>
</body>
</html>

views.py

def index(request):
    try:
        email = request.POST['email']
        print(email)

        password = request.POST['password']
        print(password)

        radio = request.POST['gridRadios']
        print(radio)

        select = request.POST['select']
        print(select)
    except:
        print("error")

    context = {'context': {'email': email, 'password': password, 'radio': radio, 'select': select}}

    print(context)

    return render(request, 'form.html', context)

1 Ответ

3 голосов
/ 07 марта 2019

Заменить это:

{% for item in context %}
  <h1>{{ item.email }}</h1>
{% endfor %}

Кому:

<h1>{{ context.email }}</h1>
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...