Django_环境配置(一)

news2024/11/18 1:48:53

目录

一、安装Django

二、创建项目

三、创建应用

 四、注册应用

 五、使用mysql数据库

六、视图

七、开发服务器

源码等资料获取方法


一、安装Django

# 在CMD中运行
pip install django
# 查看djangp版本 
python manage.py version

二、创建项目

# 在CMD中运行
django-admin startproject test1  # test1为项目名称

  • 外部test1/根目录是项目的容器。它的名称对Django无关紧要;您可以将其重命名为任何喜欢的名称。
  • manage.py:一个命令行实用程序,可让您以各种方式与该Django项目进行交互。您可以manage.py在django-admin和manage.py中阅读有关的所有详细信息 。
  • 内部test1/目录是项目的实际Python包。它的名称是Python包名称,您需要使用它来导入其中的任何内容(例如test1.urls)。
  • test1/__init__.py:一个空文件,告诉Python该目录应视为Python软件包。如果您是Python初学者,请在Python官方文档中阅读有关包的更多信息。
  • test1/settings.py:此Django项目的设置/配置。 Django设置将告诉您所有设置的工作方式。
  • test1/urls.py:此Django项目的URL声明;Django支持的网站的“目录”。您可以在URL调度程序中阅读有关URL的更多信息。
  • test1/asgi.py:与ASGI兼容的Web服务器为您的项目提供服务的入口点。有关更多详细信息,请参见如何使用ASGI进行部署。
  • test1/wsgi.py:兼容WSGI的Web服务器为您的项目提供服务的入口点。有关更多详细信息,请参见如何使用WSGI进行部署。

三、创建应用

# 在CMD中运行
cd test1
python manage.py startapp booktest  # booktest为应用名称

  • _init.py_是一个空文件,表示当前目录booktest可以当作一个python包使用。
  • tests.py文件用于开发测试用例,在实际开发中会有专门的测试人员,这个事情不需要我们来做。
  • models.py文件管理数据库操作相关。
  • views.py文件接收浏览器请求,进行处理,返回页面相关。
  • admin.py文件与网站的后台管理相关。
  • migrations文件夹管理生成的迁移文件。

 四、注册应用

应用创建成功后,需要注册才可以使用,也就是建立应用和项目之间的关联,在test1/settings.py中INSTALLED_APPS下添加应用的名称就可以完成注册。

 五、使用mysql数据库

Django默认使用的sqlite3,使用mysql数据库需要修改./test1/settings.py文件中的DATABASES参数

DATABASES = {
    'default': {
        'ENGINE': 'django.db.backends.mysql',   # 使用mysql数据库
        'NAME': 'book',     # 数据库的名称
        'USER': 'root',     # 账户
        'PASSWORD': '123456',   # 密码
        'HOST': '192.168.0.58', # 数据库ip
        'PORT': '3306',     # 端口
    }
}

修改后还需要在./test1/settings.py文件中导入pymysql才可以

import pymysql
pymysql.version_info = (1, 4, 0, 'final', 0)  # 指定版本
pymysql.install_as_MySQLdb()

遇见的问题

1、运行时报错:django.core.exceptions.ImproperlyConfigured: mysqlclient 1.4.0 or newer is required; you have 0.10.1,原因是没有指定版本

2、 运行时报错:pymysql.err.OperationalError: (1049, "Unknown database 'book'") ,原因是没有创建book数据库。注:数据库需要手动创建

六、视图

打开文件test1/views.py ,并将以下Python代码放入其中:

from django.http import HttpResponse


def index(request):
    return HttpResponse("Hello, world!")

上面是一个最简单的视图,要想访问该视图,我们需要为视图配置路由。

配置方法是在应用booktest中创建名为urls.py的文件,并将以下Python代码放入其中:

from django.urls import path

from booktest import views

urlpatterns = [
    path('index', views.index)  # index可以为空白
]

上面只是配置好了应用的url配置,还需要在项目中进行url配置。

urlpatterns = [
    path('admin/', admin.site.urls),
    path('booktest/', include('booktest.urls')),    # booktest/ 可以为空白
]

七、开发服务器

验证Django项目是否有效

# 在CMD中运行
python manage.py runserver 8989    # 8989为指定运行的端口,可省略,默认8000

 访问开发服务器

 当路由均为空白时


源码等资料获取方法

各位想获取源码的朋友请点赞 + 评论 + 收藏,三连!

三连之后我会在评论区挨个私信发给你们~

 

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

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

相关文章

工业物联网安全监测解决方案:工业安全节能管理

工业自动化和工业化的快速发展,工厂安全问题越来越受到重视。工厂安全监测是保障工厂安全运行的关键技术之一,它可以及时发现并处理潜在的安全问题,防止事故的发生,保障员工的安全和工厂的正常运转。智能改造成为广大企业关注的热…

idea配置本地maven保姆级教程

一、说在前面 idea默认会带有maven插件,原则上是可以不需要配置的。但有个缺点,他是把本地仓库直接安装在了系统盘里面,随着时间的推移,仓库越来越大,笔记本的压力会比较大。 本文是下载自己的maven包,集…

DAY41:动态规划(一)动态规划理论基础

文章目录 DP概念以及和贪心的区别动规问题分类基础问题背包问题打家劫舍股票问题子序列问题 DP注意点解题步骤:五步debug考虑方向 视频课程:从此再也不怕动态规划了,动态规划解题方法论大曝光 !| 理论基础 |力扣刷题总结| 动态规划…

3.1.cuda运行API-概述

目录 前言1. Runtime API概述总结 前言 杜老师推出的 tensorRT从零起步高性能部署 课程,之前有看过一遍,但是没有做笔记,很多东西也忘了。这次重新撸一遍,顺便记记笔记。 本次课程学习精简 CUDA 教程-Runtime API 概述 课程大纲可…

MachineLearningWu_3_LinearRegression

3 Linear Regression Linear Regression即是根据数据做出预测,如下, training set 如下: 在Linear Regression中你可以将(x, y)看做如下,每一行是一个sample,而每一列除最后一列是一个feature&#xff0c…

ESP32(掌控板) RGB灯控制

ESP32(掌控板) RGB灯控制 本程序实现了RGB灯亮度和颜色调节,通过触摸按键分别调节RGB值,通过机械按键选择要调节的灯或使用预设均通过调整变量的值加上判断实现。预设包含随机颜色和流水灯,各有高亮度和低亮度两种版本…

《Kali渗透基础》07. 弱点扫描(一)

kali渗透 1:漏洞发现1.1:Exploit-DB1.2:searchsploit1.3:nmap 2:漏洞管理3:弱点扫描类型4:漏洞基本概念4.1:CVSS4.2:CVE4.3:OVAL4.4:CCE4.5&#…

TCP概念

文章目录 1.TCP1.1 为什么需要 TCP 协议?TCP 工作在哪一层?1.2 什么是 TCP ?1.3 什么是 TCP 连接?1.4 如何唯一确定一个 TCP 连接?1.5 有一个 IP 的服务器监听了一个端口,它的 TCP 的最大连接数是多少&…

nginx的权限问题(13: Permission denied)解决办法

1、查看nginx启动用户和使用用户是否一致 ps aux | grep nginx 如图: 一个是www,一个是root用户 2、打开nginx配置文件 打开 nginx.conf 文件 查找nginx.conf的位置 ps -aux | grep nginx 3、把 nginx 改为 root 4、重启nginx服务 service nginx restart …

性能监控平台 | Prometheus+InfluxDB + Grafana!

在本文中,我将把几个常用的监控部分给梳理一下。前面我们提到过,在性能监控图谱中,有操作系统、应用服务器、中间件、队列、缓存、数据库、网络、前端、负载均衡、Web 服务器、存储、代码等很多需要监控的点。显然这些监控点不能在一个专栏中…

USG6000V 防火墙的策略应用

将G1/0/0划入TRUST区 firewall zone trustadd interface GigabitEthernet1/0/0 将G1/0/1划入UNTRUST区 firewall zone untrustadd interface GigabitEthernet1/0/1在防火墙上配置放行策略 security-policyrule name 1source-zone trustdestination-zone localdestination-z…

2023年船舶、海洋与海事工程国际会议(NAOME 2023) | Ei Scopus双检索

会议简介 Brief Introduction 2023年船舶、海洋与海事工程国际会议(NAOME 2023) 会议时间:2023年10月20日-22日 召开地点:中国镇江 大会官网:NAOME 2023-2023 International Conference on Naval Architecture and Ocean & Marine Engine…

Yolov8方法笔记

目录 1、安装yolov8的虚拟环境 (1)创建虚拟环境 (2)安装pytorch ​编辑 2、下载yolov8模型 3、解压缩,解压后的文件 4、将转换数据集(以口罩检测为准) 5、配置和执行 6、验证 7、测试 1、…

14-C++基本算法-深度优先搜索

&#x1f4da; 从递归阶乘到深度优先搜索 在学习深度优先搜索之前&#xff0c;我们先回顾一下递归阶乘的实现。递归阶乘是一种典型的递归算法&#xff0c;它通过将问题分解为更小的子问题来解决。 #include <iostream> using namespace std;int factorial(int n) {if (…

【PCIE】协议分析之-hot-reset热复位

被上游指定热复位整个通路 当高层&#xff08;higher Layer&#xff09;指示某些通道进行热复位&#xff08;Hot Reset&#xff09;时&#xff0c;以下操作将被执行&#xff1a; 所有在配置的链路中的通道都会发送带有热复位位&#xff08;Hot Reset bit&#xff09;和配置的…

IntelliJ IDEA运行bat脚本,自动taskkill端口进程

在idea运行完程序后&#xff0c;再次重新运行时如果之前的程序仍然占用着端口会导致报错&#xff1a;端口被占用。 因此每次重新运行都需要移除之前的端口所在的进程&#xff0c;这对于调试开发过程是非常频繁的操作。 需要一个快速的办法直接移除端口进程&#xff0c;如下&a…

Haskell 入门学习(一)之安装试用 Haskell

Haskell 入门学习&#xff08;一&#xff09;之安装试用 Haskell 文章目录 Haskell 入门学习&#xff08;一&#xff09;之安装试用 Haskell前言&#xff1a;安装Windows 安装Linux、MacOs 使用 VSCode 进行代码编写创建一个简单的项目使用 Cabal 管理项目项目大致结构运行项目…

Verilog学习笔记3:与非门

1位的与非门 代码&#xff1a; timescale 1ns/10ps module nand_gate( A, B, Y);input A; input B; output Y;assign Y~(A&B);endmodule//testbenchmodule nand_gate_tb; reg A; reg B; wire Y;nand_gate nand_gate(.A(A),.B(B),.Y(Y));initial begin A<0;B<0;#10 …

Ubuntu创建Git项目并push到远程Github

首先在本地创建git仓库 jasminelhl:~/prj$ mkdir Github-test jasminelhl:~/prj$ cd Github-test jasminelhl:~/prj/Github-test$ git init 提示&#xff1a;使用 master 作为初始分支的名称。这个默认分支名称可能会更改。要在新仓库中 提示&#xff1a;配置使用初始分支名&a…

MySQL之CONCAT、CONCAT_WS和GROUP_CONCAT函数用法

目录 一、准备数据 二、concat函数 1.语法格式 2.语法说明 3.场景使用 4.限制条件 三、concat_ws函数 1.语法格式 2.语法说明 3.场景使用 4.限制条件 四、group_conat函数 1.语法格式 2.语法说明 3.场景使用 4.限制条件 一、准备数据 #创建用户表 CREATE TABL…