Django(1)编写你的第一个Django应用
admin
2024-03-15 18:54:13
0

文章目录

  • 安装
    • 安装命令
    • 可能出现的报错
      • 一 版本过低
      • 二 网络超时
    • 安装完成查看版本
  • 启动Django
    • 项目创建
    • 目录结构
    • 启动我们的Django
  • 创建投票应用
    • 创建目录
    • 目录结构
    • 编辑我们第一个视图
    • 运行服务

安装

我们使用pycharm的虚拟环境 直接pip安装

如果你是win系统不推荐使用 conda 因为后期连接数据库用 conda 安装 mysql client 的时候有个小问题

具体什么问题可以看看这个链接中的 conda 和 django win环境下安装 mysql_client 出现的问题 的内容

Django面试题和出现的一些问题

安装命令

pip install django

可能出现的报错

一 版本过低

WARNING: There was an error checking the latest version of pip.

这个报错是因为你的 pip 版本过低 升级一下就行

python -m pip install --upgrade pip

二 网络超时

这个报错是因为网络延迟

pip._vendor.urllib3.exceptions.ReadTimeoutError: HTTPSConnectionPool(host='files.pythonhosted.org', port=443): Read timed out.

指定源就行

pip install django -i http://pypi.douban.com/simple/ --trusted-host pypi.douban.com

安装完成查看版本

python -m django --version

启动Django

项目创建

你想在哪里创建Django项目那么就cd到哪里 然后输入以下命令

django-admin startproject dj_web

dj_web 是我起的名字 你们想换什么就换什么

目录结构

dj_web/manage.py           管理工具dj_web/__init__.pysettings.py     配置文件urls.py         URL调度器asgi.py         asgi是wsgi的扩展异步Python标准,比只能同步的wsgi性能更好wsgi.py         Web服务器网关接口

这些目录和文件的用处是:

  • 最外层的 dj_web/ 根目录只是你项目的容器, 根目录名称对 Django 没有影响,你可以将它重命名为任何你喜欢的名称。
  • manage.py: 一个让你用各种方式管理 Django 项目的命令行工具。你可以阅读 django-admin 和 manage.py 获取所有 manage.py 的细节。
  • 里面一层的 dj_web/ 目录包含你的项目,它是一个纯 Python 包。它的名字就是当你引用它内部任何东西时需要用到的 Python 包名。 (比如 dj_web.urls).
  • dj_web/init.py:一个空文件,告诉 Python 这个目录应该被认为是一个 Python 包。如果你是 Python 初学者,阅读官方文档中的 更多关于包的知识。
  • dj_web/settings.py:Django 项目的配置文件。如果你想知道这个文件是如何工作的,请查看 Django 配置 了解细节。
  • dj_web/urls.py:Django 项目的 URL 声明,就像你网站的“目录”。阅读 URL调度器 文档来获取更多关于 URL 的内容。
  • dj_web/asgi.py:作为你的项目的运行在 ASGI 兼容的 Web 服务器上的入口。阅读 如何使用 ASGI 来部署 了解更多细节。
  • dj_web/wsgi.py:作为你的项目的运行在 WSGI 兼容的Web服务器上的入口。阅读 如何使用 WSGI 进行部署 了解更多细节。

启动我们的Django

cd 到我们的项目目录,要和manage.py同级,然后执行以下命令

python manage.py runserver 8000

8000 是我指定的启动端口,可以不加默认8000

在控制台出现一个链接 http://127.0.0.1:8000/ 让我们点进去看看

如果想开放我们的服务那么执行以下命令

python manage.py runserver 0.0.0.0:8000

创建投票应用

创建目录

我们要创建对应的目录,这个django可以帮我们实现

python manage.py startapp polls

目录结构

polls/__init__.pyadmin.pyapps.pymigrations/__init__.pymodels.pytests.pyviews.py

编辑我们第一个视图

打开 polls/views.py 写入以下代码

from django.http import HttpResponsedef index(request):return HttpResponse("Hello, world. You're at the polls index.")

这是一个简单的视图,我们需要将一个url映射到它。

我们需要在polls目录下创建一个urls.py的文件并写入以下代码

from django.urls import pathfrom . import viewsurlpatterns = [path('', views.index, name='index'),
]

下一步就是在dj_web目录中的url写入以下代码

from django.contrib import admin
from django.urls import path, includeurlpatterns = [path('admin/', admin.site.urls),path('polls/', include('polls.urls')),
]

include

函数 include() 允许引用其它 URLconfs。每当 Django 遇到 include() 时,它会截断与此项匹配的 URL 的部分,并将剩余的字符串发送到 URLconf 以供进一步处理。

运行服务

python manage.py runserver 8000

进入链接 http://127.0.0.1:8000/polls/

看到 Hello, world. You're at the polls index. ok 成功

相关内容

热门资讯

linux入门---制作进度条 了解缓冲区 我们首先来看看下面的操作: 我们首先创建了一个文件并在这个文件里面添加了...
C++ 机房预约系统(六):学... 8、 学生模块 8.1 学生子菜单、登录和注销 实现步骤: 在Student.cpp的...
A.机器学习入门算法(三):基... 机器学习算法(三):K近邻(k-nearest neigh...
数字温湿度传感器DHT11模块... 模块实例https://blog.csdn.net/qq_38393591/article/deta...
有限元三角形单元的等效节点力 文章目录前言一、重新复习一下有限元三角形单元的理论1、三角形单元的形函数(Nÿ...
Redis 所有支持的数据结构... Redis 是一种开源的基于键值对存储的 NoSQL 数据库,支持多种数据结构。以下是...
win下pytorch安装—c... 安装目录一、cuda安装1.1、cuda版本选择1.2、下载安装二、cudnn安装三、pytorch...
MySQL基础-多表查询 文章目录MySQL基础-多表查询一、案例及引入1、基础概念2、笛卡尔积的理解二、多表查询的分类1、等...
keil调试专题篇 调试的前提是需要连接调试器比如STLINK。 然后点击菜单或者快捷图标均可进入调试模式。 如果前面...
MATLAB | 全网最详细网... 一篇超超超长,超超超全面网络图绘制教程,本篇基本能讲清楚所有绘制要点&#...
IHome主页 - 让你的浏览... 随着互联网的发展,人们越来越离不开浏览器了。每天上班、学习、娱乐,浏览器...
TCP 协议 一、TCP 协议概念 TCP即传输控制协议(Transmission Control ...
营业执照的经营范围有哪些 营业执照的经营范围有哪些 经营范围是指企业可以从事的生产经营与服务项目,是进行公司注册...
C++ 可变体(variant... 一、可变体(variant) 基础用法 Union的问题: 无法知道当前使用的类型是什...
血压计语音芯片,电子医疗设备声... 语音电子血压计是带有语音提示功能的电子血压计,测量前至测量结果全程语音播报࿰...
MySQL OCP888题解0... 文章目录1、原题1.1、英文原题1.2、答案2、题目解析2.1、题干解析2.2、选项解析3、知识点3...
【2023-Pytorch-检... (肆十二想说的一些话)Yolo这个系列我们已经更新了大概一年的时间,现在基本的流程也走走通了,包含数...
实战项目:保险行业用户分类 这里写目录标题1、项目介绍1.1 行业背景1.2 数据介绍2、代码实现导入数据探索数据处理列标签名异...
记录--我在前端干工地(thr... 这里给大家分享我在网上总结出来的一些知识,希望对大家有所帮助 前段时间接触了Th...
43 openEuler搭建A... 文章目录43 openEuler搭建Apache服务器-配置文件说明和管理模块43.1 配置文件说明...