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


目录
相关文章
基于DeepSeek的生成对抗网络(GAN)在图像生成中的应用
生成对抗网络(GAN)通过生成器和判别器的对抗训练,生成高质量的合成数据,在图像生成等领域展现巨大潜力。DeepSeek作为高效深度学习框架,提供便捷API支持GAN快速实现和优化。本文详细介绍基于DeepSeek的GAN技术,涵盖基本原理、实现步骤及代码示例,展示其在图像生成中的应用,并探讨优化与改进方法,如WGAN、CGAN等,解决模式崩溃、训练不稳定等问题。最后,总结GAN在艺术创作、数据增强、图像修复等场景的应用前景。
138 16
云原生应用网关进阶:阿里云网络ALB Ingress 全面增强
云原生应用网关进阶:阿里云网络ALB Ingress 全面增强
机器学习在网络流量预测中的应用:运维人员的智慧水晶球?
机器学习在网络流量预测中的应用:运维人员的智慧水晶球?
83 19
DeepSeek生成对抗网络(GAN)的训练与应用
生成对抗网络(GANs)是深度学习的重要技术,能生成逼真的图像、音频和文本数据。通过生成器和判别器的对抗训练,GANs实现高质量数据生成。DeepSeek提供强大工具和API,简化GAN的训练与应用。本文介绍如何使用DeepSeek构建、训练GAN,并通过代码示例帮助掌握相关技巧,涵盖模型定义、训练过程及图像生成等环节。
|
1月前
|
【02】客户端服务端C语言-go语言-web端PHP语言整合内容发布-优雅草网络设备监控系统-2月12日优雅草简化Centos stream8安装zabbix7教程-本搭建教程非docker搭建教程-优雅草solution
【02】客户端服务端C语言-go语言-web端PHP语言整合内容发布-优雅草网络设备监控系统-2月12日优雅草简化Centos stream8安装zabbix7教程-本搭建教程非docker搭建教程-优雅草solution
88 20
从集思录可转债数据探秘:Python与C++实现的移动平均算法应用
本文探讨了如何利用移动平均算法分析集思录提供的可转债数据,帮助投资者把握价格趋势。通过Python和C++两种编程语言实现简单移动平均(SMA),展示了数据处理的具体方法。Python代码借助`pandas`库轻松计算5日SMA,而C++代码则通过高效的数据处理展示了SMA的计算过程。集思录平台提供了详尽且及时的可转债数据,助力投资者结合算法与社区讨论,做出更明智的投资决策。掌握这些工具和技术,有助于在复杂多变的金融市场中挖掘更多价值。
61 12
通义灵码AI程序员实战:从零构建Python记账本应用的开发全解析
本文通过开发Python记账本应用的真实案例,展示通义灵码AI程序员2.0的代码生成能力。从需求分析到功能实现、界面升级及测试覆盖,AI程序员展现了需求转化、技术选型、测试驱动和代码可维护性等核心价值。文中详细解析了如何使用Python标准库和tkinter库实现命令行及图形化界面,并生成单元测试用例,确保应用的稳定性和可维护性。尽管AI工具显著提升开发效率,但用户仍需具备编程基础以进行调试和优化。
253 9
基于 Python 的布隆过滤器算法在内网行为管理中的应用探究
在复杂多变的网络环境中,内网行为管理至关重要。本文介绍布隆过滤器(Bloom Filter),一种高效的空间节省型概率数据结构,用于判断元素是否存在于集合中。通过多个哈希函数映射到位数组,实现快速访问控制。Python代码示例展示了如何构建和使用布隆过滤器,有效提升企业内网安全性和资源管理效率。
52 9
应用程序中的网络协议:原理、应用与挑战
网络协议是应用程序实现流畅运行和安全通信的基石。了解不同协议的特点和应用场景,以及它们面临的挑战和应对策略,对于开发者和用户都具有重要意义。在未来,随着技术的不断发展,网络协议也将不断优化和创新,为数字世界的发展提供更强大的支持。
Python网络编程(socketserver、TFTP云盘、HTTPServer服务器模型)
Python网络编程 Python小项目 Python网盘 Python HTTP请求服务端
2164 0

热门文章

最新文章