亲宝软件园·资讯

展开

Python Django待办事项应用

海拥 人气:0

Django是一个基于Python Web框架的高级Web框架,允许快速开发和干净,务实的设计。今天,我们将创建一个待办事项应用程序,以了解Django的基础知识。在这个网络应用程序中,人们可以创建笔记,如谷歌保持或印象笔记。

所需模块 : 

Django : 安装 Django

crispy_forms :

pip install --upgrade django-crispy-forms

基本设置:通过以下命令启动项目 –

django-admin startproject todo-site

将目录更改为待办事项站点 –

cd todo-site

启动服务器 - 通过在终端中键入以下命令来启动服务器 -

python manage.py runserver

要检查服务器是否正在运行,请转到 Web 浏览器并输入 http://127.0.0.1:8000/ 作为 URL。

现在,通过按

ctrl-c

现在,让我们创建一个应用。

python manage.py startapp todo

转到 todo/ 文件夹 通过执行 : cd todo 并创建一个包含index.html文件 : templates/todo/index.html 使用文本编辑器

打开项目文件夹,目录结构应如下所示:

现在,在 settings.py todo_site中添加待办事项应用程序和crispy_form

在 todo_site 中编辑 urls.py 文件 :

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 ############
	# 传递item_id作为主键,以删除具有给定id的待办事项
	path('del/<str:item_id>', views.remove, name="del"),
	########################################################################
	path('admin/', admin.site.urls),
]

在待办事项中编辑 models.py :

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

在待办事项中编辑 views.py :

from django.shortcuts import render, redirect
from django.contrib import messages

## 导入待办事项表单和模型

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)



### 函数来删除项目,它从url接收待办事项item_id作为主键 ##
def remove(request, item_id):
	item = Todo.objects.get(id=item_id)
	item.delete()
	messages.info(request, "item removed !!!")
	return redirect('todo')

现在在待办事项中创建一个 forms.py:

from django import forms
from .models import Todo

class TodoForm(forms.ModelForm):
	class Meta:
		model = Todo
		fields="__all__"

将模型注册到管理员 :

导航到 templates/todo/index.html 并对其进行编辑: 链接到index.html文件 进行迁移并迁移它 

python manage.py makemigrations
python manage.py migrate

现在,您可以运行服务器以查看您的待办事项应用程序

python manage.py runserver

加载全部内容

相关教程
猜你喜欢
用户评论