Top
<!-- modles.py Todo list table -->
class Task(models.Model):
title = models.charField(max_length=200)
complete = models.BooleanField(default=False)
created = models.DateTimeField(auto_now_add=True)
- python manage.py makermigrations
- python manage.py migrate
<!-- Forms.py -->
from django import forms
from .models import *
class TaskForm(forms.ModelForm):
title = forms.CharField(max_length=200, widget= forms.Textarea(attrs={'placeholder':'Enter new task here. . .'}))
class Meta:
model = Task
fields = '__all__'
<!-- views.py -->
def to_do_database(request):
tasks = Task.objects.all()
form = TaskForm()
if request.method == 'POST':
form = TaskForm(request.POST)
if form.is_valid():
form.save()
return redirect('/to_do_database')
completedTasks = True
for t in tasks:
if t.complete == False:
completedTasks = False
context = {'tasks': tasks, 'form': form,'completedTasks': completedTasks, "breadcrumb":{"parent":"Todo", "child":"Todo with database"}}
return render(request,'to_do_database/to-do-database.html',context)
<!-- to-do.html -->
<form method="POST" action="{% url 'to_do_database' %}">
{% csrf_token %}
{{ form.title }}
<span class="btn btn-danger cancel-btn" id="close-task-panel">Close</span >
<button class="btn btn-success ms-3 add-new-task-btn" id="add-task" type="submit" >Add Task</button>
</form>