当前位置: 首页 > news >正文

django4.2 day1Django快速入门

1、创建虚拟环境

  • 打开cmd
  • 安装virtualenv  pip install virtualenvwrapper-win
  • workon 查看虚拟环境
  • mkvirtualenv  创建新的虚拟环境
  • 删除虚拟环境 rmvirtualenv 
  • 进入虚拟环境 workon env

 2、创建django虚拟环境并安装django

  • 创建虚拟环境mkvirtualenv django4env
  • 进入虚拟环境
  • 安装django  pip install django==4.2 -i https://pypi.douban.com/simple
  • 测试一下是否安装成功pip show django
  • 选择解释器C:\Users\{用户}\Envs\django4env\Scripts\python.exe

 3、创建一个Django项目

  • 方式一:进入到指定要存放项目的目录,执行 django-admin startproject HelloDjango 来创建一个名字为HelloDjango的工程
  • 方式二:使用pyvharm专业版创建Django项目
    创建项目后,默认的目录结构:
    manage.py:
    ·是Django用于管理本项目的命令行工具,之后进行站点运行,数据库自动生成等都是通过本文件完成
    HelloDjango/ init .py:
    告诉python该目录是一个python包,暂无内容,后期一些工具的初始化可能会用到
    HelloDjango/settings.py:
    Django项目的配置文件,默认状态其中定义了本项目引用的组件,项目名,数据库,静态资源等
    HelloDjango/urls.py:
    ·维护项目的URL路由映射,即定义当客户端访问时由哪个模块进行响应
    HelloDjango/wsgi.py:
    全称为Python Web Server Gateway Interface,即Python服务器网关接口,是Python应用与Web服务器之间
    的接口,用于Django项目在服务器上的部署和上线,一般不需要修改。
    HelloDjango/asgi.py:
    定义ASGI的接口信息,和WSGI类似,在3.以后新增ASGI,相比WSGI,ASGI实现了异步处理,用于启动异步通
    信服务,比如:实现在线聊天等异步通信功能。(类似Tornado异步框架)

    4、测试服务器的启动

         python manage.py runserver [ip:port]

可以直接进行服务运行默认执行起来的端口是8000
也可以自己指定ip和端口:
1.监听机器所有可用ip (电脑可能有多个内网ip或多个外网ip):
python manage.py runserver 0.0.0.0:8000
2.同时在settings.py中将
ALLOWED HOSTS=*'1
3,在其他局域网电脑上可以通过在浏览器输入 Django项目所在电脑的 IP:8000 来访问

 

 5、数据迁移

迁移:将模型映射到数据库的过程

生成迁移文件:python manage.py makemigrations

执行迁移:python manage.py migrate

 6、创建应用

python manage.py startapp App

创建名称为App的应用

使用应用前需要将应用配置到项目中,在settings.py中将应用加入到INSTALLED_APPS选项中。

应用目录介绍:
init·py:
其中暂无内容,使得app成为一个包
admin.py:
管理站点模型的声明文件,默认为空
apps.py:
应用信息定义文件,在其中生成了AppConfig,该类用于定义应用名等数据
models.py:
添加模型层数据类文件
views.py:
定义URL相应函数
migrations包:
自动生成,生成迁移文件的
tests.py:
测试代码文件

7、基本视图

#首先我们在views.py中建立一个路由响应函数
from django.http import HttpResponse
def welcome(request):
return HttpResponse('HelloDjango');
#接着我们在ur1s中进行注册
#1.直接访问视图
path(r'hello/,hello, name='hello')
# 2导入App中的子路由urls.py文件
path('app/',include(App.urls'))
#3.使用命名空间
path('app/',include(('App.urls','App'),namespace='App'))#子路由写法如下:
urlpatterns =[
#django1.8,2.0正则表达式写法: 不再使用,不推荐
# ur1(r'^index/$',index),
# Djangov2.0,v3.0,v4.0写法: 常用
path(r'hello/',hello, name='hello'),
]

8、基本模板 

模板实际上就是我们用HTML写好的页面
创建模板文件夹templates,
在模板文件夹中创建模板文件
在views中去加载渲染模板,使用render函数: return render(request,'xxx')

 9、定义模型

在models.py中引入models

from django.db import models

创建自己的模型类,但切记要继承自 models.Model
案例驱动:使用模型定义班级,并在模板上显示班级列表

# 班级table : grade
# columns:班级名称    - name成立时间    - date女生个数    - girlnum男生个数    - boynum是否删除    - is_delete
from django.db import models# Create your models here.#模型  《==》表结构
# 类属性 《==》表字段
# 对象 《==》表的一行记录
# 用户名称 - name
# 年龄 - age
# 性别 - sex
# 是否删除 - is_delete
class UserModel(models.Model):name = models.CharField(max_length=30)  #用户名称name varchar(30)age = models.IntegerField(default=18)  #年龄age int defalut 18sex = models.CharField(max_length=20)  #性别sex varchar(20)is_delete = models.BooleanField(default=False)

数据迁移

10、Admin后台管理系统

在admin.py中将model加入后台管理:

        admin.site.register(Grade)

from django.contrib import admin
from user.models import *#后台管理系统的使用
# 1、在这里注册对应的模型
admin.site.register(UserModel)
# 2、创建超级管理员账号密码
# python manage.py createsuperuser
# 3、根路由urls.py添加    path("admin/", admin.site.urls),
# 4、访问后台管理系统
# http://127.0.0.1:8000/admin/

创建超级用户:python manage.py createsuperuser

访问admin后台:http://127.0.0.1:8000/admin/

相关文章:

django4.2 day1Django快速入门

1、创建虚拟环境 打开cmd安装virtualenv pip install virtualenvwrapper-winworkon 查看虚拟环境mkvirtualenv 创建新的虚拟环境删除虚拟环境 rmvirtualenv 进入虚拟环境 workon env 2、创建django虚拟环境并安装django 创建虚拟环境mkvirtualenv django4env进入虚拟环境安…...

linux的exec和system函数介绍及选择

在应用程序中有时候需要调用第三方的应用,这是常见的需求。此时可以使用linux下的exec命令或system命令达到目的。但是这两个该选择哪个呢?有什么区别?下面总结介绍下。 exec和system介绍 在Linux中,exec命令用于在当前进程中执行…...

150行代码写一个Qt井字棋游戏

照例先演示一下: QT井字棋游戏,可以悔棋。 会在鼠标箭头处跟随一个下棋方的小棋子图标。 棋盘和棋子是自己画的,可以自行在对应的代码处更换自己喜欢的图片,不过要注意尺寸兼容。 以棋会友: 井字棋最关键的就是下棋了&#xf…...

k8s概念-controller

Controller作用和分类 controller用于控制pod 参考: 工作负载资源 | Kubernetes 控制器主要分为: Deployments 部署无状态应用,控制pod升级,回退 ReplicaSet 副本集,控制pod扩容,裁减 ReplicationController(相当于ReplicaSet的老版本,现在建议使用Deployments…...

Gis入门,根据起止点和一个控制点计算二阶贝塞尔曲线(共三个控制点组成的线段转曲线)

前言 本章讲解如何在gis地图中使用起止点和一个控制点(总共三个控制点)生成二阶贝塞尔曲线。 三阶贝塞尔曲线请参考下一章《Gis入门,使用起止点和两个控制点生成三阶贝塞尔曲线(共四个控制点)》 贝塞尔曲线(Bezier curve)介绍 贝塞尔曲线(Bezier curve)是一种数学…...

第1集丨Vue 江湖 —— Hello Vue

目录 一、简介1.1 参考网址1.2 下载 二、Hello Vue2.1 创建页面2.2 安装Live Server插件2.4 安装 vue-devtools2.5 预览效果 一、简介 Vue(读音 /vjuː/, 类似于 view) 是一套用于构建用户界面的渐进式框架。与其它大型框架不同的是,Vue 被设…...

PCB制版技术

1、在头脑里形成一个原理图----现在就下载AD9盖版,诞生了一个问题,电路板去哪里买,买了怎么焊接电路和芯片,怎样流程化批量制作电子产品 1.1 形成一个PCB板,形成一个结构 1.2 焊接,嫁接,组装等 …...

大数据课程E7——Flume的Interceptor

文章作者邮箱:yugongshiyesina.cn 地址:广东惠州 ▲ 本章节目的 ⚪ 了解Interceptor的概念和配置参数; ⚪ 掌握Interceptor的使用方法; ⚪ 掌握Interceptor的Host Interceptor; ⚪ 掌握Interceptor的…...

P2P网络NAT穿透原理(打洞方案)

1.关于NAT NAT技术(Network Address Translation,网络地址转换)是一种把内部网络(简称为内网)私有IP地址转换为外部网络(简称为外网)公共IP地址的技术,它使得一定范围内的多台主机只…...

Gof23设计模式之桥接外观模式

1.概述 又名门面模式,是一种通过为多个复杂的子系统提供一个一致的接口,而使这些子系统更加容易被访问的模式。该模式对外有一个统一接口,外部应用程序不用关心内部子系统的具体的细节,这样会大大降低应用程序的复杂度&#xff0…...

微服务性能分析工具 Pyroscope 初体验

Go 自带接口性能分析工具 pprof,较为常用的有以下 4 种分析: CPU Profiling: CPU 分析,按照一定的频率采集所监听的应用程序 CPU(含寄存器)的使用情况,可确定应用程序在主动消耗 CPU 周期时花费时间的位置…...

工作记录------单元测试(持续更新)

工作记录------单元测试 之前的工作中从来没有写过单元测试&#xff0c;新入职公司要求写单元测试&#xff0c; 个人觉得&#xff0c;作为程序员单元测试还是必须会写的 于此记录一下首次编写单元测试的过程。 首先引入单元测试相关的依赖 <dependency><groupId>…...

C#再windowForm窗体中绘画扇形并给其填充颜色

C#再windowForm窗体中绘画扇形并给其填充颜色 Graphics graphics this.CreateGraphics();graphics.SmoothingMode SmoothingMode.AntiAlias;int width this.Width;int height this.Height;h this.Height;w this.Width;Rectangle rct new Rectangle(0 - h / 6, 0 - h / 6…...

MBA拓展有感-见好就收,还是挑战到底?MBA拓展有感-见好就收,还是挑战到底?

今天看到新闻提到某位坚持了14年高考的同学滑档&#xff0c;让人心生感叹&#xff1a;无论在日常工作还是生活中&#xff0c;选择都是非常重要的。不由想起前段时间我参加研究生新生拓展时的一些感悟&#xff0c;和大家分享一下。 事情的起因是拓展活动中的一个分队竞技类的活…...

综合布线系统光缆分类及其特点?

综合布线系统光缆是一种用于数据传输和通信的电缆&#xff0c;常用于建筑物内部网络和通信系统的布线。光缆采用光纤作为传输介质&#xff0c;能够以光的形式传输大量数据&#xff0c;具有高带宽、低延迟、抗干扰等特点&#xff0c;适用于高速数据传输和长距离通信需求。 光缆…...

前端构建(打包)工具发展史

大多同学的前端学习路线&#xff1a;三件套框架慢慢延伸到其他&#xff0c;在这个过程中&#xff0c;有一个词出现的频率很高&#xff1a;webpack 。 作为一个很出名的前端构建工具我们在网上随便一搜&#xff0c;就会有各种教程&#xff1a;loader plugin entry吧啦吧啦。 但…...

【数据可视化】(一)数据可视化概述

目录 0.本章节概述 一、数据可视化 1、什么是数据可视化? 2、数据可视化的好处 3、数据可视化的用途 二、数据探索 1、数据相关工具的使用情景: 2、探索性查询 三、数据挑战 1、什么是数据挑战?...

GoogleLeNet Inception V2 V3

文章目录 卷积核分解第一步分解&#xff0c;对称分解第二步分解&#xff0c;非对称分解在Inception中的改造一般模型的参数节省量可能导致的问题 针对两个辅助分类起的改造特征图尺寸缩减Model Regularization via Label Smoothing——LSR问题描述&#xff0c;也就是LSR解决什么…...

【css】背景图片附着

属性&#xff1a;background-attachment 属性指定背景图像是应该滚动还是固定的&#xff08;不会随页面的其余部分一起滚动&#xff09;。 background-attachment: fixed&#xff1a;为固定&#xff1b; background-attachment: scroll为滚动 代码&#xff1a; <!DOCTYPE h…...

解决运行flutter doctor --android-licenses时报错

问题描述&#xff1a; 配置flutter环境时&#xff0c;会使用flutter doctor命令来检查运行flutter的相关依赖是否配好。能看到还差 Android license status unknown.未解决。 C:\Users\ipkiss.wu>flutter doctor Flutter assets will be downloaded from https://storage.…...

在使用Python爬虫时遇到503 Service Unavailable错误解决办法汇总

在进行Python爬虫的过程中&#xff0c;有时会遇到503 Service Unavailable错误&#xff0c;这意味着所请求的服务不可用&#xff0c;无法获取所需的数据。为了解决这个常见的问题&#xff0c;本文将提供一些解决办法&#xff0c;希望能提供实战价值&#xff0c;让爬虫任务顺利完…...

小研究 - 主动式微服务细粒度弹性缩放算法研究(一)

微服务架构已成为云数据中心的基本服务架构。但目前关于微服务系统弹性缩放的研究大多是基于服务或实例级别的水平缩放&#xff0c;忽略了能够充分利用单台服务器资源的细粒度垂直缩放&#xff0c;从而导致资源浪费。为此&#xff0c;本文设计了主动式微服务细粒度弹性缩放算法…...

【LeetCode】215.数组中的第K个最大元素

题目 给定整数数组 nums 和整数 k&#xff0c;请返回数组中第 k 个最大的元素。 请注意&#xff0c;你需要找的是数组排序后的第 k 个最大的元素&#xff0c;而不是第 k 个不同的元素。 你必须设计并实现时间复杂度为 O(n) 的算法解决此问题。 示例 1: 输入: [3,2,1,5,6,4…...

MySQL学习记录:第七章 存储过程和函数

文章目录 第七章 存储过程和函数一、存储过程1、 创建语法*2、调用语法(1)空参列表(2)创建带in参数模式的存储过程,需终端运行(3)创建带out参数模式的存储过程,需终端运行(4)创建带inout参数模式的存储过程,需终端运行3、删除存储过程4、查看存储过程的信息二、函数…...

Docker中gitlab以及gitlab-runner的安装与使用

1、本文主要讲述如何使用Docker安装gitlab以及gitlab-runner&#xff0c;并且会讲述gitlab-runner如何使用 2、gitlab部分不需要修改过多的配置即可使用&#xff0c;本文未讲述https配置&#xff0c;如有需求&#xff0c;可自行百度 3、Docker如何安装可以自行百度 一、Docker安…...

一起学SF框架系列5.12-spring-beans-数据绑定dataBinding

数据绑定有助于将用户输入动态绑定到应用程序的域模型&#xff08;或用于处理用户输入的任何对象&#xff09;&#xff0c;主要用于web层&#xff0c;但实际可用于任何层。Spring提供了DataBinder来做到这一点&#xff0c;并提供了Validator进行数据验证&#xff0c;两者组成了…...

火热报名中 | 赛宁独家技术支持第七届“蓝帽杯”网络安全技能大赛

由公安部网络安全保卫局、教育部教育管理信息中心、中国教育协会指导&#xff0c;中国人民公安大学主办&#xff0c;奇安信科技集团股份有限公司协办&#xff0c;南京赛宁信息技术有限公司提供技术支持的2023第七届“蓝帽杯”全国大学生网络安全技能大赛于近日正式开启报名。 …...

无涯教程-jQuery - Ajax Tutorial函数

AJAX是用于创建交互式Web应用程序的Web开发技术。如果您了解JavaScript,HTML,CSS和XML,则只需花费一个小时即可开始使用AJAX。 为什么要学习Ajax? AJAX代表 A 同步 Ja vaScript和 X ML。 AJAX是一项新技术,可借助XML,HTML,CSS和Java Script创建更好,更快,更具交互性的Web应用…...

Android日志

Android中的日志工具类是Log&#xff08;android.util.Log&#xff09;&#xff0c;这个类中提供了如下5个方法来供我们打印日志。 Log.v()。用于打印那些最为琐碎的、意义最小的日志信息。对应级别verbose&#xff0c;是Android日志里面级别最低的一种。 Log.d()。用于打印一…...

【Golang 接口自动化08】使用标准库httptest完成HTTP请求的Mock测试

目录 前言 http包的HandleFunc函数 http.Request/http.ResponseWriter httptest 定义被测接口 测试代码 测试执行 总结 资料获取方法 前言 Mock是一个做自动化测试永远绕不过去的话题。本文主要介绍使用标准库net/http/httptest完成HTTP请求的Mock的测试方法。 可能有…...