Django入门总结_django 开发总结

img
img

既有适合小白学习的零基础资料,也有适合3年以上经验的小伙伴深入学习提升的进阶课程,涵盖了95%以上物联网嵌入式知识点,真正体系化!

由于文件比较多,这里只是将部分目录截图出来,全套包含大厂面经、学习笔记、源码讲义、实战项目、大纲路线、电子书籍、讲解视频,并且后续会持续更新

需要这些体系化资料的朋友,可以加我V获取:vip1024c (备注嵌入式)

如果你需要这些资料,可以戳这里获取

查看已创建的虚拟环境命令 :

$ workon

使⽤某个虚拟环的命令 :

$ workon 虚拟环境名称

退出虚拟环境的命令 :

$ deactivate

删除虚拟环境的命令 :

$ rmvirtualenv 虚拟环境名称

4.如何在虚拟环境中安装⼯具包

确认是否进⼊当前虚拟环境 (workon 虚拟环境名)

$ pip install ⼯具包名==版本号

$ pip list 查看已安装的⼯具包



三、创建Django项目工程

1.创建虚拟环境

查看虚拟环境

$ workon

创建虚拟环境py38_dj22

$ mkvirtualenv 虚拟环境名称

安装Django2.2框架模块

$ pip install Django==2.2

查看是否安装成功

$ pip list

2.创建Django项目

在桌面创建djproject文件

$ cd Desktop/

$ mkdir djproject

进入djproject文件

cd djprojects/

创建项目dj01

$ django-admin startproject 项目名称

在这里插入图片描述

查看项目

$ ls

在这里插入图片描述

查看目录结构

$ tree

在这里插入图片描述

在这里插入图片描述

  • settings.py是项⽬的整体配置⽂件。
  • urls.py是项⽬的URL配置⽂件。
  • wsgi.py是项⽬与WSGI兼容的Web服务器⼊⼝。
  • manage.py是项⽬管理⽂件,通过它管理项⽬。

进入项目dj01

$ cd dj01

$ ls

在这里插入图片描述

执行manage.py文件

$ python manage.py runserver

在这里插入图片描述

访问服务器浏览器输入http://127.0.0.1:8000/
在这里插入图片描述

Ctrl+C退出服务器


四、创建项目子应用

Web应⽤中,通常有⼀些业务功能模块是在不同的项⽬中都可以复⽤的,故在开发中通常将⼯程项⽬拆分为不同的⼦功能模块,各功能模块间可以保持相对的独⽴,在其他⼯程项⽬中需要⽤到某个特定功能模块时,可以将该模块代码整体复制过去,达到复⽤。

1.创建项目子应用
$ python manage.py startapp 子应用名

在这里插入图片描述

2.应用子目录说明

在这里插入图片描述

  • admin.py⽂件跟⽹站的后台管理站点配置相关。
  • apps.py⽂件⽤于配置当前⼦应⽤的相关信息。
  • migrations⽬录⽤于存放数据库迁移历史⽂件。
  • models.py⽂件⽤户保存数据库模型类。
  • tests.py⽂件⽤于开发测试⽤例,编写单元测试。
  • views.py⽂件⽤于编写Web应⽤视图。
3.注册安装⼦应⽤

创建出来的⼦应⽤⽬录⽂件虽然被放到了⼯程项⽬⽬录中,但是Django⼯程并不能⽴即直接使⽤该⼦应⽤,需要注册安装后才能使⽤。

$ vim settings.py

在⼯程配置⽂件settings.py中,INSTALLED_APPS 项保存了⼯程中已经注册安装的⼦应⽤,初始⼯程中的INSTALLED_APPS如下:
在这里插入图片描述

注册安装⼀个⼦应⽤的⽅法,即是将⼦应⽤的配置信息⽂件apps.py中的Config类添加到INSTALLED_APPS列表中。
在这里插入图片描述

4.设置PyCharm环境

五、Django模型

1.定义模型类

modles.py文件

from django.db import models

# Create your models here.


class FilmInfo(models.Model):
    fid = models.AutoField(primary_key=True)
    fname = models.CharField(max_length=20)


class PeopleInfo(models.Model):
    uid = models.AutoField(primary_key=True)
    uname = models.CharField(max_length=30)
    gender = models.BooleanField()
    dj = models.ForeignKey(FilmInfo, on_delete=models.CASCADE)

2.创建迁移文件
$ python manage.py makemigrations 应用

在这里插入图片描述

已安装情况下仍然报错

报错内容为找不到mysqlclient

django.core.exceptions.ImproperlyConfigured: Error loading MySQLdb module. Did you install mysqlclient?

通常解决办法:项目(settings.py同级)目录中__init__.py中添加

import pymysql
pymysql.install_as_MySQLdb()

3.查看生成的SQL语句
$ python manage.py sqlmigrate dj 0001

在这里插入图片描述

4.执⾏迁移⽂件

执⾏迁移⽂件:根据第⼀步⽣成的语句在数据库中创建表

$ python manage.py migrate

在这里插入图片描述

在这里插入图片描述

在这里插入图片描述

六、站点管理

1. 管理界⾯本地化

本地化是将显示的语⾔、时间等使⽤本地的习惯,这⾥的本地化就是进⾏中国化.

中国⼤陆地区使⽤简体中⽂, 时区使⽤亚洲/上海时区, 注意这⾥不使⽤北京时区.

LANGUAGE_CODE = 'zh-Hans'

TIME_ZONE = 'Asia/Shanghai'

在这里插入图片描述

2. 创建管理员

创建管理员的命令 :

python manage.py createsuperuser

(awei) awei@ubuntu:~/Desktop/DjangoProjects/dj01$ python manage.py createsuperuser
用户名 (leave blank to use 'awei'): admin
电子邮件地址: flymeawei@163.com
Password: @Lmw133212
Password (again): @Lmw133212
Superuser created successfully.
(awei) awei@ubuntu:~/Desktop/DjangoProjects/dj01$ 

在这里插入图片描述

登录
在这里插入图片描述

3. 注册模型类

在应⽤的admin.py⽂件中注册模型类
需要导⼊模型模块 :from book.models import BookInfo,PeopleInfo

from django.contrib import admin
from dj.models import FilmInfo, PeopleInfo

# Register your models here.


admin.site.register(FilmInfo)
admin.site.register(PeopleInfo)

在这里插入图片描述

在这里插入图片描述

4.修改默认输出

在模型类中添加__str__方法,优化模型类输出
在这里插入图片描述

优化后
在这里插入图片描述

七、视图和URL

1.定义视图函数
from django.shortcuts import render
from django.http import HttpResponse

# Create your views here.


def show(request):
    """
 print Hello Django2.2 !
 :param request: 
 :return: 
 """
    return HttpResponse('Hello Django2.2 !')

在这里插入图片描述

2.配置路由

根路由settings.py文件

ROOT_URLCONF = 'dj01.urls'

在这里插入图片描述

  • 配置根路由
from django.contrib import admin
from django.urls import path, include

urlpatterns = [
    path('admin/', admin.site.urls),
    path('', include('dj.urls.py'))
]

在这里插入图片描述

  • 配置子路由
from django.urls import path, re_path
from dj.views import show


urlpatterns = [
    re_path('^show/$', show)

在这里插入图片描述

查找视图的过程 :

  • 1.请求者在浏览器地址栏中输⼊URL, 请求到Django服务器.
  • 2.Django服务器获取URL请求路径.
  • 3.然后与程序中的URLconf逐条匹配.
  • 4.如果匹配成功则调⽤对应的视图.
  • 5.如果所有的URLconf都没有匹配成功.则返回404错误.

八、模板

1.模板使⽤步骤
  • 创建模板
  • 设置模板查找路径
  • 模板接收视图传⼊的数据
  • 模板处理数据
2. 创建模板

在应⽤同级⽬录下创建模板⽂件夹templates. ⽂件夹名称固定写法.

templates⽂件夹下, 创建应⽤同名⽂件夹,例:dj

在应⽤同名⽂件夹下创建⽹⻚模板⽂件. 例 :index.html
在这里插入图片描述

3. 设置模板查找路径

settings.py文件下的TEMPLATES

 'DIRS': [os.path.join(BASE_DIR, 'templates')],

在这里插入图片描述
BASE_DIR当前工程项目dj01

BASE_DIR = os.path.dirname(os.path.dirname(os.path.abspath(__file__)))

在这里插入图片描述

4. 编辑视图函数传递数据给模板
from django.shortcuts import render


# Create your views here.
def templates(request):
    """
 xian shi dao templates
 :param request: 
 :return: 
 """
    data = {'title': 'Hello Django Templates'}
    return render(request, 'dj/index.html', data)

在这里插入图片描述

5. 编辑前端⻚⾯获取并处理数据
<!DOCTYPE html>
<html lang="en">
<head>
    <meta charset="UTF-8">
    <title>Title</title>
</head>
    <h1 style="color: red"> {{ title }} </h1>
<body>

</body>
</html>

在这里插入图片描述

6.配置路由
urlpatterns = [
    re_path('^show/$', views.show),
    re_path('^index/$', views.templates)
]

在这里插入图片描述

7.测试

运行服务器

$ python manage.py runserver

浏览器输入127.0.0.1:8000/index/页面显示Hello Django Templates
在这里插入图片描述


九、配置文件settings.py

1. BASE_DIR

img
img

既有适合小白学习的零基础资料,也有适合3年以上经验的小伙伴深入学习提升的进阶课程,涵盖了95%以上物联网嵌入式知识点,真正体系化!

由于文件比较多,这里只是将部分目录截图出来,全套包含大厂面经、学习笔记、源码讲义、实战项目、大纲路线、电子书籍、讲解视频,并且后续会持续更新

需要这些体系化资料的朋友,可以加我V获取:vip1024c (备注嵌入式)

如果你需要这些资料,可以戳这里获取

入图片描述](https://i-blog.csdnimg.cn/blog_migrate/1beab8d919ee712ea9283293242b84d9.png)

7.测试

运行服务器

$ python manage.py runserver

浏览器输入127.0.0.1:8000/index/页面显示Hello Django Templates
在这里插入图片描述


九、配置文件settings.py

1. BASE_DIR

[外链图片转存中…(img-zBxEAwQT-1715785126205)]
[外链图片转存中…(img-pFcqqW5M-1715785126205)]

既有适合小白学习的零基础资料,也有适合3年以上经验的小伙伴深入学习提升的进阶课程,涵盖了95%以上物联网嵌入式知识点,真正体系化!

由于文件比较多,这里只是将部分目录截图出来,全套包含大厂面经、学习笔记、源码讲义、实战项目、大纲路线、电子书籍、讲解视频,并且后续会持续更新

需要这些体系化资料的朋友,可以加我V获取:vip1024c (备注嵌入式)

如果你需要这些资料,可以戳这里获取

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值