Python | Aplicación web ToDo usando Django

Requisito previo: instalación de django
Django es un marco web basado en Python Web Framework de alto nivel que permite un desarrollo rápido y un diseño limpio y pragmático. hoy crearemos una aplicación de tareas pendientes creada para comprender los conceptos básicos de Django. En esta aplicación web, se pueden crear notas como Google Keep o Evernote.
Módulos requeridos: 
 

pip install --upgrade django-crispy-forms

configuración básica:
Inicie un proyecto con el siguiente comando: 
 

Python3

from django.contrib import admin
from django.urls import path
from todo import views
 
urlpatterns = [
    #####################home_page###########################################
    path('', views.index, name="todo"),
    ####################give id no. item_id name or item_id=i.id ############
    # pass item_id as primary key to remove that the todo with given id
    path('del/<str:item_id>', views.remove, name="del"),
    ########################################################################
    path('admin/', admin.site.urls),
]

Python3

from django.db import models
from django.utils import timezone
 
class Todo(models.Model):
    title=models.CharField(max_length=100)
    details=models.TextField()
    date=models.DateTimeField(default=timezone.now)
 
    def __str__(self):
        return self.title

Python3

from django.shortcuts import render, redirect
from django.contrib import messages
 
## import todo form and models
 
from .forms import TodoForm
from .models import Todo
 
###############################################
 
def index(request):
 
    item_list = Todo.objects.order_by("-date")
    if request.method == "POST":
        form = TodoForm(request.POST)
        if form.is_valid():
            form.save()
            return redirect('todo')
    form = TodoForm()
 
    page = {
             "forms" : form,
             "list" : item_list,
             "title" : "TODO LIST",
           }
    return render(request, 'todo/index.html', page)
 
 
 
### function to remove item, it receive todo item_id as primary key from url ##
def remove(request, item_id):
    item = Todo.objects.get(id=item_id)
    item.delete()
    messages.info(request, "item removed !!!")
    return redirect('todo')

Python3

from django import forms
from .models import Todo
 
class TodoForm(forms.ModelForm):
    class Meta:
        model = Todo
        fields="__all__"

Publicación traducida automáticamente

Artículo escrito por itsvinayak y traducido por Barcelona Geeks. The original can be accessed here. Licence: CCBY-SA

Deja una respuesta

Tu dirección de correo electrónico no será publicada. Los campos obligatorios están marcados con *