django4.2 day1Django快速入门

1、创建虚拟环境

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

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

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、基本视图

python 复制代码
#首先我们在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、基本模板

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

9、定义模型

在models.py中引入models

python 复制代码
from django.db import models

创建自己的模型类,但切记要继承自 models.Model

案例驱动:使用模型定义班级,并在模板上显示班级列表

python 复制代码
# 班级table : grade
# columns:
    班级名称    - name
    成立时间    - date
    女生个数    - girlnum
    男生个数    - boynum
    是否删除    - is_delete
python 复制代码
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 18
    sex = 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/

相关推荐
奋斗的小花生5 分钟前
c++ 多态性
开发语言·c++
魔道不误砍柴功7 分钟前
Java 中如何巧妙应用 Function 让方法复用性更强
java·开发语言·python
闲晨10 分钟前
C++ 继承:代码传承的魔法棒,开启奇幻编程之旅
java·c语言·开发语言·c++·经验分享
_.Switch32 分钟前
高级Python自动化运维:容器安全与网络策略的深度解析
运维·网络·python·安全·自动化·devops
老猿讲编程37 分钟前
一个例子来说明Ada语言的实时性支持
开发语言·ada
Chrikk2 小时前
Go-性能调优实战案例
开发语言·后端·golang
幼儿园老大*2 小时前
Go的环境搭建以及GoLand安装教程
开发语言·经验分享·后端·golang·go
canyuemanyue2 小时前
go语言连续监控事件并回调处理
开发语言·后端·golang
杜杜的man2 小时前
【go从零单排】go语言中的指针
开发语言·后端·golang
测开小菜鸟2 小时前
使用python向钉钉群聊发送消息
java·python·钉钉