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/

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

相关推荐
longze_72 分钟前
生成式UI与未来AI交互变革
人工智能·python·ai·ai编程·cursor·蓝湖
weixin_438077494 分钟前
CS336 Assignment 4 (data): Filtering Language Modeling Data 翻译和实现
人工智能·python·语言模型·自然语言处理
小郭团队5 分钟前
未来PLC会消失吗?会被嵌入式系统取代吗?
c语言·人工智能·python·嵌入式硬件·架构
yesyesido6 分钟前
智能文件格式转换器:文本/Excel与CSV无缝互转的在线工具
开发语言·python·excel
_200_8 分钟前
Lua 流程控制
开发语言·junit·lua
环黄金线HHJX.9 分钟前
拼音字母量子编程PQLAiQt架构”这一概念。结合上下文《QuantumTuan ⇆ QT:Qt》
开发语言·人工智能·qt·编辑器·量子计算
王夏奇9 分钟前
python在汽车电子行业中的应用1-基础知识概念
开发语言·python·汽车
子夜江寒9 分钟前
基于PyTorch的CBOW模型实现与词向量生成
pytorch·python
He_Donglin10 分钟前
Python图书爬虫
开发语言·爬虫·python
天远Date Lab14 分钟前
Python金融风控实战:集成天远多头借贷行业风险版API实现共债预警
大数据·python