首页 > 其他分享 >Django初识

Django初识

时间:2022-11-27 21:45:36浏览次数:45  
标签:__ index return py request django 初识 Django

Django初识

目录

基本操作

验证安装:终端(django-admin)

创建项目:终端(django-admin startproject mysite)

启动django项目:终端(cd ./mysite; python manage.py runserver)

创建django应用:终端(python manage.py startapp app01)

项目主要文件介绍

'''
D:.
└─mysite 项目文件夹
    │  db.sqlite3 django自带的小型数据库
    │  manage.py django项目入口文件
    │
    ├─app01
    │  │  admin.py 后台管理
    │  │  apps.py 注册使用
    │  │  models.py 数据库相关模型类(ORM)
    │  │  tests.py 测试文件
    │  │  views.py 视图函数
    │  │  __init__.py
    │  │
    │  └─migrations 数据库迁移记录
    │          __init__.py
    │
    └─mysite
        │  settings.py 项目配置文件
        │  urls.py 路由与视图函数对应关系文件
        │  wsgi.py wsgiref模块
        │  __init__.py
        │
        └─__pycache__
                settings.cpython-36.pyc
                urls.cpython-36.pyc
                wsgi.cpython-36.pyc
                __init__.cpython-36.pyc
'''

初始技巧

# HttpResponse
def index(request):
    return HttpResponse('ahahhahaahahahah')

# render
def index(request):
    # return HttpResponse('ahahhahaahahahah')
    return render(request,'index.html')

def index(request):
    # return HttpResponse('ahahhahaahahahah')
    return render(request,'index.html','data':for_html)
    # 通过键值对或者locals()向html文件传值
# redirect
def index(request):
    # return HttpResponse('ahahhahaahahahah')
    # return render(request,'index.html')
    return redirect('http://www.mzitu.com/')

def index(request):
    # return HttpResponse('ahahhahaahahahah')
    # return render(request,'index.html')
    return redirect('/hahaha/')

静态文件配置

'''
HTML文件默认放在templates文件夹下
网站所使用的静态文件默认放在static文件夹下

静态文件:JS文件、CSS文件、需要使用的图片文件、第三方前端框架

settings.py中:

STATICFILES_DIRS = [
    os.path.join(BASE_DIR,'static')
]
当网页请求后缀重合STATIC_URL = '/static/'时,允许在STATICFILES_DIRS中查找请求的静态资源

解耦合:
html页面导入样式表或者脚本时使用{% load static %}
<link rel="stylesheet" href="{% static 'bootstrap-3.3.7-dist/css/bootstrap.min.css' %}">
来自动获取STATIC_URL = '/static/'规定的“令牌”

'''

Request对象

form表单

'''form表单默认是get提交
<form action="" method="">
</form>
form表单action参数:
1.缺省默认向当前url提交数据
2.全写
3.只写后缀 eg:/login/
form表单method参数:

在前期提交数据给django服务器时,需要去配置文件中注释掉一行代码:停用中间件CSRF
'''

request.method

'''
request.method返回字符串类型的请求类型信息
'''
def login(request):
    if request.method == 'POST':
        return HttpResponse('收到')
    return render(request, 'login.html')

request.POST

# request.POST获取用户提交的post请求数据(不包含文件){name1:[value1],name2:[value2],name3:[value3]}

#get()
username = request.POST.get('username') # get方法只会获取值列表的最后一个元素

#getlist()
hobby = request.POST.getlist('hobby') # 获取完整值列表,返回list类型

request.GET

# request.GET获取用户提交的post请求数据{name1:[value1],name2:[value2],name3:[value3]},GET请求数据大小限制4KB左右
#get()/getlist()同POST
#get()
username = request.GET.get('username') # get方法只会获取值列表的最后一个元素
#getlist()
hobby = request.GET.getlist('hobby') # 获取完整值列表,返回list类型

pycharm连接数据库(MySQL)

'''
pycharm可以充当很多种数据库的客户端
'''

django连接数据库(MySQL)

# 配置文件中配置
DATABASES = {
    'default': {
        'ENGINE': 'django.db.backends.mysql',
        'NAME': 'django_test',
        'USER': 'root',
        'PASSWORD': '**********',
        'HOST': '127.0.0.1',
        'PORT': '3306',
        'CHARSET': 'utf8'

    }
}

# Django默认使用mysqldb连接mysql,但该模块兼容性不好,需要手动改用pymysql模块连接

# 在任一__init__代码中声明

import pymysql

pymysql.install_as_MySQLdb()

标签:__,index,return,py,request,django,初识,Django
From: https://www.cnblogs.com/missfxy/p/16930668.html

相关文章

  • Django路由层
    Django路由层目录Django路由层路由匹配无名分组有名分组反向解析无名分组反向解析有名分组反向解析路由分发名称空间伪静态虚拟环境null路由匹配#url方法第一个参数是......
  • Django版本差异
    Django版本差异#一、路由层'''django1.x路由层使用url方法django2.x/3.x路由层使用path方法可以根据习惯使用re_pathpath方法支持5种转换器'''fromdjango.ur......
  • Django-ORM简介
    DjangoORM目录DjangoORM字段的增删改查数据的增删改查创建表关系null#即对象关系模型#类——表#对象——记录#对象属性(值)——记录某个字段(值)#在models.py中写......
  • 学习笔记-Django框架的使用
    前言:本博客为技术小白的记录学习过程,有错误或不解的地方请指出!!!一.安装和创建项目1.安装1.1命令行下载pip3installdjango==1.11.11 (可以跟镜像地址:-i+镜像地址......
  • django 定时任务 Error: no such table: django_apscheduler_djangojob
    使用django的定时任务一般出现各种问题例如找不到这个注册表或者urls不存在等etc....版本不兼容我的版本django2.2.8django_apscheduler==0.2.12APScheduler~......
  • 68-72.图标的作用,初识matplotlib,简单绘图
            -------------------------------------------------------------------------------------------------------------------------------------......
  • HTML初识-概念和基本知识
    1.HTML初识-基础认知+HTML标签1.1目录◆基础认知◆HTML标签学习◆综合案例1.2学习目标◆能够理解HTML的基本语法和标签的关系◆能够使用排版标签实......
  • django之ModelForm配合Select2之用法
    django在开发时有很强大的功能,但是有一些功能还是不够的,django给我们强大的自增强功能。Select2https://select2.org开发时可以直接使用CND:<linkhref="https://cdn.j......
  • 解决Django的【LookupError: No installed app with label ‘admin‘】
    其实这个问题比较好解决:1、首先debugmain函数,定位你的问题,我这边的问题是报这个错误;'ErrorloadingMySQLdbmodule.\n''Didyouinstallmysqlclient?'  2、针对......
  • Django Rest Framework
    1安装DRF官网DRF仓库地址pipinstalldjangorestframework#settings.pyINSTALLED_APPS=[...'rest_framework',]2视图视图说明View基础......