Python 教程之 Django(11)待办事项网络应用

简介: Python 教程之 Django(11)待办事项网络应用

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 使用文本编辑器

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

image.png

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

image.png

在 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__"

将模型注册到管理员 :

image.png

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

python manage.py makemigrations
python manage.py migrate

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

python manage.py runserver

image.png


目录
相关文章
|
16天前
|
存储 数据采集 人工智能
Python编程入门:从零基础到实战应用
本文是一篇面向初学者的Python编程教程,旨在帮助读者从零开始学习Python编程语言。文章首先介绍了Python的基本概念和特点,然后通过一个简单的例子展示了如何编写Python代码。接下来,文章详细介绍了Python的数据类型、变量、运算符、控制结构、函数等基本语法知识。最后,文章通过一个实战项目——制作一个简单的计算器程序,帮助读者巩固所学知识并提高编程技能。
|
11天前
|
Kubernetes 安全 Devops
有效抵御网络应用及API威胁,聊聊F5 BIG-IP Next Web应用防火墙
有效抵御网络应用及API威胁,聊聊F5 BIG-IP Next Web应用防火墙
37 10
有效抵御网络应用及API威胁,聊聊F5 BIG-IP Next Web应用防火墙
|
19天前
|
存储 安全 网络安全
网络安全的盾与剑:漏洞防御与加密技术的实战应用
在数字化浪潮中,网络安全成为保护信息资产的重中之重。本文将深入探讨网络安全的两个关键领域——安全漏洞的防御策略和加密技术的应用,通过具体案例分析常见的安全威胁,并提供实用的防护措施。同时,我们将展示如何利用Python编程语言实现简单的加密算法,增强读者的安全意识和技术能力。文章旨在为非专业读者提供一扇了解网络安全复杂世界的窗口,以及为专业人士提供可立即投入使用的技术参考。
|
19天前
|
缓存 开发者 Python
深入探索Python中的装饰器:原理、应用与最佳实践####
本文作为技术性深度解析文章,旨在揭开Python装饰器背后的神秘面纱,通过剖析其工作原理、多样化的应用场景及实践中的最佳策略,为中高级Python开发者提供一份详尽的指南。不同于常规摘要的概括性介绍,本文摘要将直接以一段精炼的代码示例开篇,随后简要阐述文章的核心价值与读者预期收获,引领读者快速进入装饰器的世界。 ```python # 示例:一个简单的日志记录装饰器 def log_decorator(func): def wrapper(*args, **kwargs): print(f"Calling {func.__name__} with args: {a
33 2
|
19天前
|
机器学习/深度学习 人工智能 自然语言处理
探索未来编程:Python在人工智能领域的深度应用与前景###
本文将深入探讨Python语言在人工智能(AI)领域的广泛应用,从基础原理到前沿实践,揭示其如何成为推动AI技术创新的关键力量。通过分析Python的简洁性、灵活性以及丰富的库支持,展现其在机器学习、深度学习、自然语言处理等子领域的卓越贡献,并展望Python在未来AI发展中的核心地位与潜在变革。 ###
|
24天前
|
网络协议 物联网 数据处理
C语言在网络通信程序实现中的应用,介绍了网络通信的基本概念、C语言的特点及其在网络通信中的优势
本文探讨了C语言在网络通信程序实现中的应用,介绍了网络通信的基本概念、C语言的特点及其在网络通信中的优势。文章详细讲解了使用C语言实现网络通信程序的基本步骤,包括TCP和UDP通信程序的实现,并讨论了关键技术、优化方法及未来发展趋势,旨在帮助读者掌握C语言在网络通信中的应用技巧。
35 2
|
24天前
|
设计模式 开发者 Python
Python编程中的设计模式应用与实践感悟####
本文作为一篇技术性文章,旨在深入探讨Python编程中设计模式的应用价值与实践心得。在快速迭代的软件开发领域,设计模式如同导航灯塔,指引开发者构建高效、可维护的软件架构。本文将通过具体案例,展现设计模式如何在实际项目中解决复杂问题,提升代码质量,并分享个人在实践过程中的体会与感悟。 ####
|
25天前
|
机器学习/深度学习 人工智能 安全
探索人工智能在网络安全中的创新应用
探索人工智能在网络安全中的创新应用
|
6天前
|
SQL 安全 网络安全
网络安全与信息安全:知识分享####
【10月更文挑战第21天】 随着数字化时代的快速发展,网络安全和信息安全已成为个人和企业不可忽视的关键问题。本文将探讨网络安全漏洞、加密技术以及安全意识的重要性,并提供一些实用的建议,帮助读者提高自身的网络安全防护能力。 ####
43 17
|
17天前
|
存储 SQL 安全
网络安全与信息安全:关于网络安全漏洞、加密技术、安全意识等方面的知识分享
随着互联网的普及,网络安全问题日益突出。本文将介绍网络安全的重要性,分析常见的网络安全漏洞及其危害,探讨加密技术在保障网络安全中的作用,并强调提高安全意识的必要性。通过本文的学习,读者将了解网络安全的基本概念和应对策略,提升个人和组织的网络安全防护能力。