热门标签 | HotTags
当前位置:  开发笔记 > 编程语言 > 正文

Python Django教程之实现待办事项应用程序

Django是一个基于Python Web框架的高级Web框架,允许快速开发和干净,务实的设计。本文将创建一个待办事项应用程序,以了解Django的基础知识,感兴趣的可以尝试一下

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/', 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

以上就是Python Django教程之实现待办事项应用程序的详细内容,更多关于Python Django待办事项应用的资料请关注其它相关文章!


推荐阅读
  • 大坑|左上角_pycharm连接服务器同步写代码(图文详细过程)
    篇首语:本文由编程笔记#小编为大家整理,主要介绍了pycharm连接服务器同步写代码(图文详细过程)相关的知识,希望对你有一定的参考价值。pycharm连接服务 ... [详细]
  • 本文介绍了解决Netty拆包粘包问题的一种方法——使用特殊结束符。在通讯过程中,客户端和服务器协商定义一个特殊的分隔符号,只要没有发送分隔符号,就代表一条数据没有结束。文章还提供了服务端的示例代码。 ... [详细]
  • Spring源码解密之默认标签的解析方式分析
    本文分析了Spring源码解密中默认标签的解析方式。通过对命名空间的判断,区分默认命名空间和自定义命名空间,并采用不同的解析方式。其中,bean标签的解析最为复杂和重要。 ... [详细]
  • 本文介绍了在开发Android新闻App时,搭建本地服务器的步骤。通过使用XAMPP软件,可以一键式搭建起开发环境,包括Apache、MySQL、PHP、PERL。在本地服务器上新建数据库和表,并设置相应的属性。最后,给出了创建new表的SQL语句。这个教程适合初学者参考。 ... [详细]
  • Linux重启网络命令实例及关机和重启示例教程
    本文介绍了Linux系统中重启网络命令的实例,以及使用不同方式关机和重启系统的示例教程。包括使用图形界面和控制台访问系统的方法,以及使用shutdown命令进行系统关机和重启的句法和用法。 ... [详细]
  • 本文介绍了如何使用php限制数据库插入的条数并显示每次插入数据库之间的数据数目,以及避免重复提交的方法。同时还介绍了如何限制某一个数据库用户的并发连接数,以及设置数据库的连接数和连接超时时间的方法。最后提供了一些关于浏览器在线用户数和数据库连接数量比例的参考值。 ... [详细]
  • Android Studio Bumblebee | 2021.1.1(大黄蜂版本使用介绍)
    本文介绍了Android Studio Bumblebee | 2021.1.1(大黄蜂版本)的使用方法和相关知识,包括Gradle的介绍、设备管理器的配置、无线调试、新版本问题等内容。同时还提供了更新版本的下载地址和启动页面截图。 ... [详细]
  • 本文介绍了使用PHP实现断点续传乱序合并文件的方法和源码。由于网络原因,文件需要分割成多个部分发送,因此无法按顺序接收。文章中提供了merge2.php的源码,通过使用shuffle函数打乱文件读取顺序,实现了乱序合并文件的功能。同时,还介绍了filesize、glob、unlink、fopen等相关函数的使用。阅读本文可以了解如何使用PHP实现断点续传乱序合并文件的具体步骤。 ... [详细]
  • 《数据结构》学习笔记3——串匹配算法性能评估
    本文主要讨论串匹配算法的性能评估,包括模式匹配、字符种类数量、算法复杂度等内容。通过借助C++中的头文件和库,可以实现对串的匹配操作。其中蛮力算法的复杂度为O(m*n),通过随机取出长度为m的子串作为模式P,在文本T中进行匹配,统计平均复杂度。对于成功和失败的匹配分别进行测试,分析其平均复杂度。详情请参考相关学习资源。 ... [详细]
  • 在重复造轮子的情况下用ProxyServlet反向代理来减少工作量
    像不少公司内部不同团队都会自己研发自己工具产品,当各个产品逐渐成熟,到达了一定的发展瓶颈,同时每个产品都有着自己的入口,用户 ... [详细]
  • 本文详细介绍了使用C#实现Word模版打印的方案。包括添加COM引用、新建Word操作类、开启Word进程、加载模版文件等步骤。通过该方案可以实现C#对Word文档的打印功能。 ... [详细]
  • 开发笔记:spring boot项目打成war包部署到服务器的步骤与注意事项
    本文介绍了将spring boot项目打成war包并部署到服务器的步骤与注意事项。通过本文的学习,读者可以了解到如何将spring boot项目打包成war包,并成功地部署到服务器上。 ... [详细]
  • 本文介绍了Windows Vista操作系统中的用户账户保护功能,该功能是为了增强系统的安全性而设计的。通过对Vista测试版的体验,可以看到系统在安全性方面的进步。该功能的引入,为用户的账户安全提供了更好的保障。 ... [详细]
  • 在tp5项目中引入ueditor编辑器并实例化后插入图片出现目录创建失败问题在查看网络上各种解决方案之后总结如下:根据官网提示主要是因为图片保存的路径无权限导致,官方文档链接:ht ... [详细]
  • 引号快捷键_首选项和设置——自定义快捷键
    3.3自定义快捷键(CustomizingHotkeys)ChemDraw快捷键由一个XML文件定义,我们可以根据自己的需要, ... [详细]
author-avatar
飞扬的青春2046是我
这个家伙很懒,什么也没留下!
PHP1.CN | 中国最专业的PHP中文社区 | DevBox开发工具箱 | json解析格式化 |PHP资讯 | PHP教程 | 数据库技术 | 服务器技术 | 前端开发技术 | PHP框架 | 开发工具 | 在线工具
Copyright © 1998 - 2020 PHP1.CN. All Rights Reserved | 京公网安备 11010802041100号 | 京ICP备19059560号-4 | PHP1.CN 第一PHP社区 版权所有