Django 入门学习总结2 创建一个投票系统

Django框架教程:构建在线投票系统项目 models.py文件中定义了应用的数据模型,这是Django ORM的核心部分。模型类继承自,每个类的属性对应数据库中的一张表。# 其他字段定义...views.py文件中包含了视图函数或类,处理用户的请求并返回响应。')admin.py文件允许你将模型类注册到Django的管理后台,便于通过Web界面操作数据。urls.py文件定义了应用的URL模式,将URL映射到视图函数或类。应用的结构和组件是构成Django项目的基础。在下一章节中,我们将深入探讨模型的设计与实现细节。 阅读详情

通过学习,我们可以实现一个简单的投票系统。这个投票系统有两部分组成。

  • 公共部分,公众可以查看和进行投票。
  • 管理员可以进行增加、删除、修改投票信息。

这里投票系统Python语言版本为3.10.13,Django Web框架版本为4.2.7。

投票系统的实现:

在磁盘的根目录下创建一个文件夹,如django(这个可以根据自己的需要决定投票系统存入在哪个位置)。

浏览到这个文件夹位置,在地址栏中输入cmd命令,进入到命令行提示符下,输入:

django-admin startproject mysite

创建mysite工程。mysite工程中将包含公众投票内容和管理页面,如下图所示。

注意命名上不要有命名冲突,有些是保留字,如django,test等。

创建完成后,mysite的工程结构为:

mysite/
        manage.py
        mysite/
            __init__.py
            settings.py
            urls.py
            asgi.py
            wsgi.py

上面工程结构各部分的含义为:

  • mysite代表工程名称
  • manage.py 用于在命令行中与mysite工程进行交互,实现各种功能。
  • 里面的mysite/ 是工程实际存放python包和文件的位置。
  • __init__.py 初始化文件。
  • settings.py代表Django工程的配置文件。
  • urls.py  包含了Django工程各个网页地址的定义。
  • 最后两个文件asgi.py和wsgi.py,与web 服务器有关。

进入到mysite文件夹下,输入:

python manage.py runserver

则可以启动web服务器,启动信息如下图所示。

这是一个Django 开发测试的服务器,注意不能在商业环境下使用。它是通过Python语言开发的轻量级的Web服务器。

在浏览器中输入网址http://127.0.0.1:8000,则可以看到以下的信息。

默认的端口号为8000,也可以在之前启动服务器中,在输入命令中:

python manage.py runserver 8080

来修改为其他的端口号,如8080。

在一个工程中,可 以包含多个应用,一个应用也可以在多个工程中。在manage.py同一个文件夹中,输入:

python manage.py startapp polls

则创建了一个polls投票系统应用。文件夹结构如下所示:

polls/
        __init__.py
        admin.py
        apps.py
        migrations/
            __init__.py
        models.py
        tests.py
        views.py

在polls/views.py文件中,修改内容为:

from django.shortcuts import render
from django.http import HttpResponse

def index(request):
        return HttpResponse("Hello, world. You're at the polls index.")

在同样的位置下,新建一个文件urls.py,用于地址映射的配置。urls.py文件中的内容为:

from django.urls import path
from . import views

urlpatterns = [
    path("", views.index, name="index"),
]

在urlpatterns 中,path里面有四个参数。

  • 第一个为路由地址route,代表了地址模式匹配方式。
  • 第二个为视图,代表了地址相应的网页映射。
  • 第三和第四个为可选项。

在mysite/urls.py,修改文件内容为:

from django.contrib import admin
from django.urls import include, path

urlpatterns = [
    path("polls/", include("polls.urls")),
    path("admin/", admin.site.urls),
]

这样就建立了polls应用的映射,可以在网页的地址栏中,输入相关的地址,看到和polls应用相关的网页信息。

基于Web的简单投票系统开发实战 vote数据库是投票系统的“心脏”,负责持久化投票主题、选项和投票记录。合理的数据模型设计直接决定系统的可扩展性和查询效率。 阅读详情

相关推荐

Django实例教程之创建一个简单的投票系统(一)

前言 本文将基于django官方案例(投票系统)进行一个简单的学习和讲解 开发环境:windows 7 开发工具:pycharm python版本:3.7 django版本:2.2 简介 通过本案例教程,我们最终将完成一个简单的投票系统的创建,该系统包含两部分: 大家都可以参与投票和查看票数的公共网站 用于添加,修改,删除投票的管理后台 首先确保django已经安装,可用如下命令...

lixiaosenlin的专栏 7017

Windows 游戏 EXCEPTION_ACCESS_VIOLATION 修复:3类硬件问题与5步软件排查法

本文提供Windows游戏EXCEPTION_ACCESS_VIOLATION错误的终极修复指南,涵盖3类硬件问题(内存故障、显卡问题、超频不稳定)和5步软件排查法(文件验证、驱动更新、DEP调整等),帮助玩家彻底解决0xFFFFFFFFFFFFFFFF内存访问冲突问题。

weixin_31856057的博客 2392

Django项目实战——用户投票系统(一)

在安装并准备好Django后,我们通过项目开始对Django的运行方式和工作流程作进一步了解。通过官方文档——用户投票系统的学习可以实时并准确的对该领域有进一步的了解, 我会通过自己的亲手实验确保每一步的准确性与可操作性

Luciferzcy的博客 2726

Curve+ 5.0.2:新一代色彩校准工具如何革新印刷行业标准

Curve+ 5.0.2作为新一代色彩校准工具,通过G7+校准算法和SCTV技术革新了印刷行业的色彩管理标准。该工具显著提升色彩精准度,减少打样时间和材料浪费,支持专色处理,实现跨材质色彩一致性,为印刷企业带来效率与质量的全面提升。

weixin_29228781的博客 528

【论文分享】【Agent】ProAgent: Building Proactive Cooperative Agents with Large Language Models

多智能体系统是由多个智能体组成的集合,这些智能体可以是软件程序、机器人、传感器或其他实体,它们各自具备一定的智能和自主性,并通过交互协作来实现单个智能体难以完成的复杂目标。

nanxun___的博客 1121

基于Django的在线投票系统

基于Django的在线投票系统是一个常见且有趣的项目,它可以帮助开发人员学习如何使用Django框架构建一个功能完善的Web应用程序。在这篇文章中,我们将深入探讨如何使用Django框架来构建一个简单而强大的在线投票系统。现在,我们已经完成了投票系统的创建、问题展示和投票功能。首先,我们需要创建一个Django项目,并且设置一个新的应用程序来处理投票系统的功能。接下来,我们需要定义我们的数据模型来存储投票相关的信息。视图中,我们处理用户的投票请求,并更新相应选项的投票数量。在这里,我们定义了两个模型。

2401_82881413的博客 753

小蔺的米哈游数据分析师之路——MYSQL篇

作为新人,记录自己mysql学习历程

weixin_47070228的博客 432

Python基于Django的课堂投票系统的设计与实现【附源码】

Python基于Django的课堂投票系统,该系统能够为老师提供一个简单易用的平台来发布投票主题,并允许学生使用电脑参与投票。通过使用系统,老师可以更好地了解学生的认知,及时调整课程内容和教学方法。而对于学生而言,该系统提供了一个互动式的课堂环境,增强了他们的学习兴趣和参与性。此外,该系统还支持对投票结果进行实时的统计和分析,从而为学生和老师提供更多的参考意见。在课堂投票系统中,学生可以随时匿名参与投票,无须暴露个人信息,有利于保护学生的隐私和安全。

徐师兄的博客 1280

RT-DETR改进策略【注意力机制篇】| 2024 PPA 并行补丁感知注意模块,提高小目标关注度

本文记录的是利用改进检测精度,详细说明了优化原因,注意事项等。原论文在红外小目标检测任务中,小目标在多次下采样操作中容易丢失关键信息。通过替代编码器和解码器基本组件中的传统卷积操作,更好地保留小目标的重要信息。HCF-Net: Hierarchical Context Fusion Network for Infrared Small Object Detection采用多分支特征提取策略,通过不同分支提取不同尺度和层次的特征。利用局部、全局和串行卷积分支,对输入特征张量进行处理。通过控制 patch si

Limiiiing的博客 1646

R数据分析:潜在剖面分析LPA的做法与解释

Latent Profile Analysis (LPA) tries to identify clusters of individuals (i.e., latent profiles) based on responses to a series of continuous variables (i.e., indicators). LPA assumes that there are unobserved latent profiles that generate patterns of resp.

Codewar的博客 1万+

基于Django框架课堂投票系统的设计与实现

Django是一款基于Python语言开发的,高效、安全、灵活、易于维护的Web框架,具有完善的文档和开发工具。使用Django框架可以快速地构建高质量的Web应用程序,支持强大的模板引擎、ORM数据库操作、用户认证和授权等一系列常用功能,同时还支持多语言和多时区的应用。Django框架自带了丰富的组件和模块,如HTTP请求响应处理、表单验证、自动化管理后台等等,可以快速实现简单到复杂Web应用,广泛应用于站点开发、Web服务、社交网络、企业信息化、教育平台以及科研实验等领域。

liudefang的专栏 903

MATLAB GUI 水果成熟度分级系统设计与实现

本文基于 MATLAB GUI 设计并实现了一款水果成熟度分级系统,能够准确地评估水果的成熟程度。在实现过程中,我们运用了 MATLAB 中的函数实现对图像的处理和分析,同时使用 GUI 界面增加了系统的易用性。值得一提的是,在实际操作中,我们应该结合实际需求对系统进行相应的改进与完善,以满足不同领域和应用场景下的需求。实验结果表明,本系统可以有效地检测出水果的成熟度,并对其进行精准的评分。因此,本文设计并实现了一款基于 MATLAB GUI 的水果成熟度分级系统。三、MATLAB 代码实现。

uote_e的博客 706

【Python项目】基于Django框架的课堂投票系统

在传统的教学模式中,教学往往是单向的“灌输”,而课堂投票系统则让学生有机会参与到教学过程中,感受到自己的意见被重视和认可,这有助于提高学生的学习热情和自主性,进而提升他们的学习兴趣和参与度。系统简介:主要包括了学生和管理功能。学生:(1)学生可以在系统中注册个人信息,并使用该信息在系统中参与投票,该系统应该提供正规的用户身份验证机制,如学号或身份证号码等,保证用户身份的准确性和安全性;它不仅能够提升教学效率,还能激发学生的学习热情,增强课堂的互动性和趣味性,对于教育领域的发展具有深远的影响和积极的作用。

Dyan_csdn的博客 820

TMS_WebGMaps_1.9.8.0_Full_Source

TMS_WebGMaps_1.9.8.0_Full_Source 全源码 delphi cbuilder

计算机控制技术及应用

《计算机控制技术及应用》通过总结作者的科研成果和吸收国内外的先进理论、方法和技术,以计算机控制系统的网络化、开放化、智能化和集成化发展趋势为主线索,主要介绍计算机控制系统的基本概念和计算机控制系统的典型形式,计算机控制系统的数学描述与基本分析方法,以及数字PID控制器、最少拍控制系统、达林算法、状态变量设计法等设计方法及其各种改进算法。重点突出计算机控制系统输入输出通道接口的设计方法和典型控制系统的设计案例与实现方法等。

python flask django在线投票系统 md14i

Python版本:python3.7以上框架支持:flask/django开发软件:PyCharm数据库:mysql数据库工具:Navicat浏览器:谷歌浏览器。

专注分享bishe530的博客 1269

老版QQ原生表情gif动态

这是老版的QQ表情,不过全是动态的的,Windows照片查看器是不会动的,可以右击用浏览器打开查看,再说一遍是老版的,只是分享给宁愿用老版也要动态的人。

毕业设计:基于python的课堂投票系统

毕业设计:基于python的课堂投票系统利用计算机技术和网络平台,提供实时投票和互动功能。教师可以通过该系统创建投票问题并发送给学生,学生可以通过计算机或移动设备进行投票。系统能够实时收集和分析学生的投票结果,并提供可视化的数据展示和自定义报告功能。为计算机毕业设计提供了一个创新的方向,结合了深度学习和计算机视觉技术,为毕业生提供了一个有意义的研究课题。对于计算机专业、软件工程专业、人工智能专业、大数据专业的毕业生而言,无论您对深度学习技术、机器学习、算法或人工智能领域的同学,能为您提供灵感和指导。

2301_79555157的博客 1206

Devexpress16.2.6破解工具

Devexpress16.2.6破解工具Devexpress16.2.6破解工具Devexpress16.2.6破解工具Devexpress16.2.6破解工具

Django-入门操作详解

初试牛刀利用Django实现投票系统创建Python虚拟环境配置MySQL利用Django来管理模型 利用Django实现投票系统 声明:我是跟着Github项目学习的,这里的记录仅仅是帮助自己理解。 这篇文章的主要目的是利用Django连接MySQL数据库,并利用Django中自带的Web前端处理器对数据库进行简单增删改查操作,首先在进行实验之前请确保如下环境配置正确:Python3.5以上、M...

没错我是程序猿 531

基于Python在线投票系统

基于Python在线投票系统的开发过程中,PyCharm 为 Python 代码编写提供了高效的工作环境,能够帮助开发者快速编写、调试和优化代码。实现都依赖于 PyCharm 提供的智能提示和代码自动完成功能。开发者可以通过 PyCharm 的调试工具实时跟踪代码执行过程,确保系统各个模块的逻辑正确性和性能优化。此外,PyCharm 强大的项目管理功能使得系统的多个功能模块能够高效地协作和管理。开发语言:Python框架:flask django开发软件:PyCharm/vscode。

qq2295116502的博客 851

Django项目实战-课堂投票系统(附源码+论文)

本文介绍了一款基于Django框架开发的课堂投票系统,该系统能够为老师提供一个简单易用的平台来发布投票主题,并允许学生使用电脑参与投票。通过使用系统,老师可以更好地了解学生的认知,及时调整课程内容和教学方法。而对于学生而言,该系统提供了一个互动式的课堂环境,增强了他们的学习兴趣和参与性。此外,该系统还支持对投票结果进行实时的统计和分析,从而为学生和老师提供更多的参考意见。

2301_77929200的博客 533

Django 入门学习总结3

打开mysite/settings.py文件,可以看到我们使用Python中已包含的默认的数据库SQLite,也可以使用其他的数据库,如Oracle、Mysql等。在投票系统中,建立了两个数据库表相关的模型:Question和Choice,问题包含问题和产生的日期,选项包含选项和投票的计数。修改polls/models.py文件,以便在数据库表的查询中能返回更明确的信息。点击最下的问题链接,我们就可以对投票系统,进行问题的添加、修改和删除等操作。模型与数据库中表结构相关,如字段的长度、类型等信息。

Leove的专栏 507

Python基于flask-django学生在线投票系统

开发一个基于Flask或Django框架的学生在线投票系统,支持用户注册、投票创建、实时统计和结果可视化。需兼顾安全性、易用性和可扩展性。

我的个人的博客 349

Django项目实战——用户投票系统(六)

在上一章,我们完成了对一个项目的测试阶段,一个在项目完成过程中必要的测试。 接下来我们将开始提高学习静态文件来丰富网页。 本案例将添加一个样式表和一个图像。

Luciferzcy的博客 1125

mysql迅速搭建网页_Django + mysql 快速搭建简单web投票系统

了解学习pyhton web的简单demo1. 安装Django, 安装pyhton 自行百度2. 执行命令创建project django-admin.py startproject mysite3. 执行命令创建app python manage.py startapp polls目录结构: polls/templates/polls 目录 和 polls/admin.py 都是自己...

weixin_39524425的博客 252

Python在线投票系统

在在线投票系统开发过程中,开发者可以通过 PyCharm 的调试工具实时跟踪代码执行过程,确保系统各个模块的逻辑正确性和性能优化。此外,PyCharm 强大的项目管理功能使得系统的多个功能模块能够高效地协作和管理。该在线投票系统利用Python语言、MySQL数据库,Django框架,结合目前流行的 B/S架构,将系统的各个方面都集中到数据库中,以便于毕业设计的需要。该系统在确保系统稳定的前提下,能够实现多功能模块的设计和应用。不同角色的准入制度是有严格区别的。

bishe288的博客 847

Django tutorial(1)【翻译】编写第一个Django app,第一部分——创建项目

编写第一个Django app,第一部分——创建项目让我们通过例子来学习。通过这个指导教程,我们将一步步地教你创建一个简单的投票系统。这个系统分为两部分:1.一个公共的页面让人们投票和查看投票结果。2.一个管理员页面让你添加,修改和删除投票。我们假定你已经安装了Django。你可以运行Python编译器并输入import django来测试Django是否已经安装。如果命令运行成功,没

lxdcyh的专栏 3611

Django学习day5——创建app

app应用与project项目的区别 一个app实现某个功能,比如博客、公共档案数据库或者简单的投票系统 一个project是配置文件和多个app的集合,这些app组合成整个站点 一个project可以包含多个app 一个app可以属于多个project 创建APP 进入mysite项目根目录命令行输入如下 python manage.py startapp myapp ...

weixin_30444105的博客 78
上一篇: Django 入门学习总结1 安装
下一篇: Django 入门学习总结3
computerclass
博客等级 码龄22年 99粉丝 307原创
评论
成就一亿技术人!
拼手气红包6.0元
还能输入1000个字符
 
 条评论被折叠 查看
添加红包

请填写红包祝福语或标题

个

红包个数最小为10个

元

红包金额最低5元

当前余额3.43元 前往充值 >
需支付:10.00元
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

computerclass

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付元
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值