Я разрабатываю приложение Todo, в котором я хочу добавить новое поле, которое принимает ввод как число, и когда пользователь вводит, скажем 3, приложение должно возвращать 3 пустых текстовых поля, и если пользователь изменит число, чтобы сказать 4 , тогда он должен обновить sh до 4 текстовых полей. Итак, как мне сделать это в django с использованием представлений, моделей и html.
Это мои файлы:
- views.py
from django.shortcuts import render
from django.http import HttpResponseRedirect
from .models import TodoItem
def todoview(request):
all_todo_items = TodoItem.objects.all()
return render(request, 'todo.html',
{'all_items': all_todo_items})
def addTodo(request):
new_item = TodoItem(content=request.POST['content'])
new_item.save()
return HttpResponseRedirect('/todo/')
def deleteTodo(request, todo_id):
item_to_delete = TodoItem.objects.get(id=todo_id)
item_to_delete.delete()
return HttpResponseRedirect('/todo/')
models.py
from django.db import models
class TodoItem(models.Model):
content = models.TextField()
todo. html
<div class="p-3 mb-2 bg-warning text-dark">This is the Todo Page</div>
<div class="p-3 mb-2 bg-info text-white">HelloPulkit!!!</div>
<ol>
{% for todo_item in all_items %}
<li>{{todo_item.content}}
<form action="/deleteTodo/{{todo_item.id}}/"
style="display: inline;"
method="post">{% csrf_token %}
<input class="btn btn-secondary btn-sm" type="submit" value="delete"/>
</form>
</li>
{% endfor %}
</ol>
<form action="/addTodo/" method="post">{% csrf_token %}
<input type="text" name="content"/>
<input class="btn btn-primary btn-sm" type="submit" value="add"/>
</form>
<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">
<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>
PS Этот код не включает поле, о котором я спрашивал с тех пор, я не могу понять, с чего начать !!