python Django入门

1.创建Django项目

  • 方式一:进入到指定要存放项目的目录,执行*django-admin startproject "projectname"* 来创建一个名
  • 方式二:使用Pycharm专业版创建Django项目

创建项目后,默认的目录结构:

manage.py:是Django用于管理本项目的命令行工具,之后进行站点运行,数据库自动生成等都是通过本文件完成。

HelloDjango/init.py:告诉python该目录是一个python包,暂无内容,后期一些工具的初始化可能会用到

HelloDjango/settings.py:Django项目的配置文件,默认状态其中定义了本项目引用的组件,项目名,数据库,静态资源等.

HelloDjango/urlspy:维护项目的URL路由映射,即定义当客户端访问时由哪个模块进行响应

HelloDjango/wsgi.py:全称为Python Web Server Gateway Interface,即Python服务器网关接口是Python应用与web服务器之间的接口,用于Django项目在服务器上的部署和上线,一般不需要修改。

2.启动Django项目

python manage.py runserver ip:port

可以直接进行服务运行默认执行起来的端口是8000,也可以自己指定ip和端口:

1.监听机器所有可用ip(电脑可能有多个内网ip或多个外网ip):

python manage.py runserver 0.0.0.0:8000

2.同时在settings.py中将ALLOED_HOSTS="\*"

3.在其他局域网电脑上可以通过在浏览器输入Django项目所在电脑的IP:8000来访问(本机依旧可以通过使用127.0.0.1,localhost访问)

3.数据迁移

迁移的概念:就是将模型映射到数据库的过程

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

执行迁移: python manage.py migrate

不需要初始化迁移文件夹,每个应用默认有迁移文件夹migrations

4.创建应用

python managepy startapp App

创建名称为App的应用
使用应用前需要将应用配置到项目中,在settings.py中将应用加入到INSTALLED_APPS选项中

应用目录介绍:

init.py:其中暂无内容,使得app成为一个包

admin.py:管理站点模型的声明文件,默认为空

apps.py:应用信息定义文件,在其中生成了AppConfig,该类用于定义应用名等数据

models.py:添加模型层数据类文件

views.py:定义URL相应函数

migrations包:自动生成,生成迁移文件的

testspy:测试代码文件

5.视图函数Views基本应用

在View.py中定义视图函数

然后再url.py中添加路由

6.Django前后端交互

7.Django流程框架

8.Django路由

1.在创建的app下创建url.py文件

2.在ur.py文件中写入子路由

9.Django模板

模板实际上就是我们用HTML写好的页面

创建模板文件夹templates,在模板文件夹中创建模板文件

在views中去加载洁染模板,使用render函数:return render(request,"index.html")

10.定义模型

在models.py 中引入models

from django.db import models

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

模型===》表结构

类属性==》表字段

对象==》表的一行记录

案例驱动: 定义用户模型

班级table : user

columns :

用户名称 - name

年龄-age

性别:sex

是否删除 - is_delete

模型创建好之后需要进行数据迁移。(模型表结构改变后一定要重新进行数据迁移)

写视图函数

11.后台管理Admin

#后台管理系统的使用

1,在应用的admin.py注册对应的模型

2.创建超级管理员的账号和密码: python manage.py createsuperuser

3.在主路由urls.py中填加: path('admin/,admin.site.urls)

4.访阿后台管理系统 http://127.8.0.1:8008/admin/

参考:千锋教育的个人空间-千锋教育个人主页-哔哩哔哩视频

相关推荐
AR-26710-7 分钟前
Linux Day7——建组/用户、umask、Python脚本
linux·python
打工仔折腾 AI28 分钟前
普通摄像头接入AI识别:绿联NAS部署Frigate监控实战
人工智能·后端·python·性能优化·ai agent 实战
菜鸟~noob23329 分钟前
【Bonjour】华为Peerium架构深度解析:从冯·诺依曼到百万处理器“一台计算机”,附MATLAB性能仿真【含matlab代码,可直接运行】
开发语言·matlab·华为·peerium
kuuailetianzi35 分钟前
第3篇:《变量、数据类型与基本运算》
python
白远山1 小时前
24小时自助健身房系统开发实战:从需求分析到完整指南
java·开发语言·数据库·数据挖掘·需求分析
正经教主1 小时前
【FDE系列】阶段2:Day 28:FastAPI 入门 — 把你的函数变成 API 服务
人工智能·python·fde
李航19832 小时前
用 DeepDraw 几何引擎开发建筑设计软件(十):推挤工具
python·3d
VXbishe2 小时前
【课程设计】基于SpringBoot的乡村政务服务系统的设计与实现-计算机毕设77011
javascript·vue.js·spring boot·python·php·课程设计·政务
名字还没想好☜3 小时前
Python sqlite3 实战:事务提交、参数化防注入、WAL 并发与 row_factory 取字典
后端·python·编程语言
shmily麻瓜小菜鸡3 小时前
TDD(测试驱动开发)详解
开发语言·javascript·typescript·node.js·ecmascript