【Python】【进阶篇】15、如何启动Django项目详解

news2024/11/28 0:35:30

目录

  • 如何启动Django项目详解
    • 1. 启动项目并实现访问
        • 1) 启动项目命令介绍
        • 2) manage.py文件子命令

如何启动Django项目详解

我们使用 django-admin 命令成功创建项目后,我们要如何启动这个项目呢?本节的学习目标是能够通过本地回送地址 127.0.0.1 成功访问 BookStore 项目。

1. 启动项目并实现访问

在 CMD 命令行工具中,执行cd命令进入 Book/BookStore 目录下,通过《Django创建第一个项目》一节,我们知道在 BookStore 子目录下有一个 manage.py 文件,而这个文件的主要作用之一就是用来启动项目的,所以必须和 manage.py 文件处于同一个路径下才可以执行启动命令,启动项目的命令如下所示:

python manage.py runserver

runserver 方法是调试 Django 时经常用到的运行方式,它使用 Django 自带的 WSGI Server
运行,主要在测试和开发中使用。执行完命令后,如下图所示表示启动成功。

在这里插入图片描述

图1:Django项目启动命令

提示:若是 Linux 或者 Mac 系统执行 python3 manage.py runserver

成功启动后,在该目录下会生成 Django 自带的数据库文件 db.sqlite3,这是 Django 默认自带的轻量级数据库。对于红色方框标住的部分,它是 Django 给的警告信息,后面会做详细的讲解。通过图 1 可以得到很多信息点,首先 Django 告诉我们如何访问项目,通过 http://127.0.0.1:8000 访问创建好的项目,8000 是 Django 的默认端口号。最后如若想退出运行状态,可以通过 CTRL+C 来终止。

在浏览器地址栏输入 http://127.0.0.1:8000 进行访问,如下图所示:

在这里插入图片描述

图2:Django 项目访问界面

提示:注意项目成功运行后,不要关闭运行命令的 CMD 窗口,否则将访问失败。

当你在地址栏回车的一瞬间,若出现了如图 2 所示的界面后,那么恭喜你,表示项目的骨架已经搭建完成了。其实你会发现我们只是用了一个启动命令,就实现一个站点的访问功能,这就是 Django 框架的优势所在,Django 框架依靠创建项目时生成的配置文件,从而构建了自身功能的完整性。

访问成功后,我们可以看到 CMD 命令行也存在变化,如图所示:

在这里插入图片描述

图3:CMD命令行的HTTP响应

当我们在浏览器地址栏输入网址并确认访问后,就表示对项目服务端发送请求,服务端接收到请求后,会返回相应的页面。结合 HTTP 协议的相关知识,GET
方法表示从服务器获取资源,200 响应码表示请求成功。项目启动后,服务端开始运行,如果关闭启动项目的 CMD 命令行窗口,就表示服务端关闭,此时在浏览器地址栏输入本地会送地址并进行访问,会得到如图 4 所示的结果:

在这里插入图片描述

图4:无法加载网页页面

所以用来启动项目的 CMD 命令行窗口一般都处于运行状态,这样在项目开发过程中就可以实时进行测试或者调试代码。

1) 启动项目命令介绍

我们使用如下命名启动了项目:

python manage.py runserver

Django 的默认启动端口是 8000,当然也可以选定其他端口来启用。比如,你想在你的计算机上启动多个 Django 项目,那么就需要多个端口启动不同的项目,否则就会出现端口重用的问题,那么如何通过指定端口号启动项目呢?我们可以使用如下命令格式:

python manage.py runserver 6000

上面的命令表示的是以 6000 端口启动项目。

如果是在局域网内,那么如何让局域网内的其他电脑访问你的 Django 项目呢?我们可以使用如下命令来启动项目:

python3 manage.py runserver 0.0.0.0:6000

2) manage.py文件子命令

我们可以执行manage.py help命令查看 manage.py 文件的相关子命令:

C:\Users\Administrator\Book\BookStore>manage.py help

Type 'manage.py help ' for help on a specific subcommand.

Available subcommands:

[auth]
    changepassword
    createsuperuser

[contenttypes]
    remove_stale_contenttypes

[django]
    check
    compilemessages
    createcachetable
    dbshell
    diffsettings
    dumpdata
    flush
    inspectdb
    loaddata
    makemessages
    makemigrations
    migrate
    sendtestemail
    shell
    showmigrations
    sqlflush
    sqlmigrate
    sqlsequencereset
    squashmigrations
    startapp
    startproject
    test
    testserver

[sessions]
    clearsessions

[staticfiles]
    collectstatic
    findstatic
    runserver

后面章节如果用到相关的命令,我们再对其进行讲解。

通过本节讲解,我们实现了如何用本地回送地址访问 Django 项目目的。下一节,我们将对 Django 项目的重要配置文件 settings.py 做详细的介绍。

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.coloradmin.cn/o/474676.html

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈,一经查实,立即删除!

相关文章

第十一章 Transform组件(上)

本章节我们介绍Transform类,它是一个组件,每一个游戏对象有拥有该组件。因此,它值得我们重点介绍一下。Transform代表了游戏对象的世界变换,也就是移动,选择和缩放。 首先,我们先介绍它的属性(…

Linux Ansible角色介绍

目录 角色的基础结构 角色来源与应用 Galaxy角色 系统角色 自定义角色 角色(roles)用于层次化、结构化地组织playbookroles通过标准化目录结构来装载变量文件、tasks(模块任务)、handlers(处理程序)、…

标准ACL配置

标准ACL配置 【实验目的】 掌握标准ACL的配置。 验证配置。 【实验拓扑】 实验拓扑如图1所示。 图1 实验拓扑 设备参数如表所示。 表1 设备参数表 设备 接口 IP地址 子网掩码 默认网关 R1 S0/3/0 192.168.1.1 255.255.255.252 N/A Gi0/0/0 192.168.2.1 255.…

大数据分析利器之Power BI,你是否已经掌握?(文末送书)

🤵‍♂️ 个人主页:艾派森的个人主页 ✍🏻作者简介:Python学习者 🐋 希望大家多多支持,我们一起进步!😄 如果文章对你有帮助的话, 欢迎评论 💬点赞&#x1f4…

【校招VIP】IT职位校招简历千万不要用两栏的模板,另外,告诉你个陷阱:越个性机会越少

前两天在简历指导的直播里,发现了不应该出现的一种简历格式问题。 有的同学喜欢用那种竖栏两栏的简历模板。 我们建议研发岗的校招,简历不要这么去写。 因为两栏的话,实际上有一个很大的问题。 因为简历上需要写项目经历,需要写…

你最关心的4个零代码问题,ChatGPT 帮你解答了!

作为人工智能(AI)新型聊天机器人模型 ChatGPT,刚上线5天就突破100万用户,两个多月全球用户量破亿,不愧为业界最炙热的当红炸子鸡。 ChatGPT 是一种语言生成模型,由 OpenAI 开发和训练。它是基于 Transform…

C语言函数大全-- s 开头的函数(1)

C语言函数大全 本篇介绍C语言函数大全-- s 开头的函数(1) 1. sbrk 1.1 函数说明 函数声明函数功能void *sbrk(intptr_t increment);它是一个 Unix 系统的函数,用于调整程序的堆空间。 参数: increment : 增加的堆空…

机器学习算法系列(五)-- 支持向量机(SVM)

机器学习算法系列之–支持向量机(揭开SVM的神秘面纱) 支持向量机(Support Vector Machine :SVM):二分类算法模型,数据集较小时,分类效果甚至优于神经网络。 其最大的特点在于&#x…

C++ muduo日志库的使用

muduo日志库的使用 一、引用二、使用方法2.1、引入头文件2.2、 启动日志库2.3、记录日志2.4、输出格式2.5、日志滚动 三、总结 一、引用 muduo是一个高性能的网络库,它的日志库采用了异步、多线程的方式来记录日志,其主要特点包括: 能够按大…

使用Pano2VR实现全景图切换和平面图效果

内容简介 本文在文章《使用Pano2VR实现背景音乐、放大/缩小、旋转、缩略图和直线/立体/鱼眼模式等》基础上,增加全景图切换和平面图效果;效果如下图(为了可以上传缩小屏幕,属于PC端运行): 实现过程 1. 运行…

【Bus】编写一个Demo虚拟的总线-设备-驱动模型

文章目录 1. 前言2. 总线驱动模型三要素2.1 总线2.2 设备2.3 驱动 3. Demo Code3.1 virt_bus_core.c3.2 virt_device.c3.3 virt_driver.c 4. 工程代码下载地址5. 参考资料 1. 前言 Linux平台为了驱动的可重用性,虚拟了很多的虚拟总线。很经典的就是platform总线&am…

Android Room数据库如何使用增删改查

先看运行效果图。 1.在app下的build.gradle。在dependencies{}闭包中添加如下依赖 //roomdef room_version "2.3.0"implementation "androidx.room:room-runtime:$room_version"annotationProcessor "androidx.room:room-compiler:$room_version&q…

爱奇艺DRM修炼之路

01 DRM的定义和作用 DRM,即数字版权管理(digital rights management),是在数字内容交易过程中,对知识产权进行保护的技术、工具和处理过程。它的目的是防止数字内容被未经授权的用户复制、修改和分发,以保护…

解读TaskMatrix.AI

ChatGPT在广泛的开放域任务上展现出令人瞩目的强大对话、上下文学习和代码生成能力,而且它所获得的常识知识还可以为特定领域的任务生成高级解决方案概要。不过,除了更强大的学习、理解和生成能力,ChatGPT还有哪些问题需要解决呢?…

《利用光体积描记图信号的模糊递推特性估计无袖带血压的级联卷积神经网络模型》阅读笔记

目录 一、论文摘要 二、论文十问 Q1:论文试图解决什么问题? Q2:这是否是一个新的问题? Q3:这篇文章要验证一个什么科学假设? Q4:有哪些相关研究?如何归类?谁是这一…

城市的智能进化,汇成数字中国的璀璨银河

著名城市规划理论家刘易斯芒福德在《城市发展史——起源、演变和前景》中提出,“城市从其起源时代开始便是一种特殊的构造,它专门用来储存并流传人类文明的成果。这种构造致密而紧凑,足以用最小的空间容纳更多的设施。” 他认为,城…

我们如何将 Amazon Snowcone 送入轨道

我从 4 或 5 岁起就一直是太空旅行和美国太空计划的粉丝。我记得读过关于水星和双子星座计划的文章,兴奋地看着鹰号登月舱降落在月球上。 如今,随着每次发射到达近地轨道 (LEO) 的成本似乎都在不断下降,因此有比以往任何时候都要更多的机会&…

建设元宇宙基础设施——PPIO边缘云在云渲染/云游戏的思考和实践

关于“元宇宙”的讨论越发火热,而建设元宇宙不可避免需要布设基础设施,LiveVideoStackCon 2022 北京站邀请到PPIO边缘云联合创始人——王闻宇,同大家探讨元宇宙网络时延的最优解–边缘云基础设施的架构与建设,并介绍PPIO边缘云在泛…

Kafka Broker是如何基于Reactor模式来处理海量用户请求的?

介绍 https://kafka.apache.org/0110/documentation.html 参数名描述默认值queued.max.requestsbroker全局唯一的请求队列,用来保存请求500num.io.threads用来处理请求的线程数8 参考博客 [1]

Python环境设置

在了解Python语言的历史和介绍之后,要想开始学习Python语言,还需要在计算机中安装Python编译环境,本期就来聊聊怎么在计算机中安装Python环境。 在计算机中添加Python环境的几种选择: 直接安装Python程序,即Python官…