当前位置: 首页 > news >正文

Django配置文件,request,链接mysql方法,Orm简介

三板斧问题(views.py)

HttpResponse        # 返回的是字符串
render                # 渲染一个HTML静态文件,模板文件
redirect            # 重定向的

在视图文件中得视图函数必须要接收一个形参request,并且,视图函数也要有返回值:HttpResponse对象

def html(request):
    print('from html')
    # return HttpResponse('request')  # 它返回的是字符串
    return  render(request,'html.html')  # 返回html
    # return redirect('https://blog.csdn.net/qq_48064830?type=blog') # 返回网址
    # return redirect('/home/')   # 跳转,重定向的

 全局配置文件(settings.py)

settings.py文件就是Django框架的全局文件
注册应用
database
templates
调试模式
静态文件的配置
语言的修改
时区的修改

APP注册需要写在这里

INSTALLED_APPS = [
    'django.contrib.admin',
    'django.contrib.auth',
    'django.contrib.contenttypes',
    'django.contrib.sessions',
    'django.contrib.messages',
    'django.contrib.staticfiles',
    'app01.apps.App01Config', # 这是全写
]

中间件

MIDDLEWARE = [
    'django.middleware.security.SecurityMiddleware',
    'django.contrib.sessions.middleware.SessionMiddleware',
    'django.middleware.common.CommonMiddleware',
    # 'django.middleware.csrf.CsrfViewMiddleware',
    'django.contrib.auth.middleware.AuthenticationMiddleware',
    'django.contrib.messages.middleware.MessageMiddleware',
    'django.middleware.clickjacking.XFrameOptionsMiddleware',
]
模板,模块,html写在这里

TEMPLATES = [
    {
        'BACKEND': 'django.template.backends.django.DjangoTemplates',
         'DIRS': [os.path.join(BASE_DIR, 'templates')]#需要加的路径
         ...
}

LANGUAGE_CODE = 'zh-hans'#中文格式
TIME_ZONE = 'Asia/Shanghai'#亚洲上海时间
USE_I18N = True
USE_L10N = True
USE_TZ = False
链接MySQL的配置

DATABASES = {
    'default': {
        # 'ENGINE': 'django.db.backends.sqlite3',
        # 'NAME': BASE_DIR / 'db.sqlite3',
        'ENGINE': 'django.db.backends.mysql',
        'HOST':'127.0.0.1',
        'POST':3306,
        'USER':'root',
        'PASSWORD':'123456',
        'NAME':'db13',
        'CHARSET':'utf8',
    }
}
自定义新建文件夹需要添加的路径,例如static文件夹


STATIC_URL = '/static/'

STATICFILES_DIRS=[

    os.path.join(BASE_DIR,'static')
]

静态文件的配置(templates/.html) 

静态文件是什么?
    css,js,img,第三方的前端框架,第三方工具 等

我们一般把HTML的静态文件放在templates文件夹下,静态文件放在哪里呢?

一般放在static文件夹 

我们要手动的帮助我们创建static文件夹
static
   》 css
   》 js
   》img

   》...

还需要在配置文件中配置一些数据

这个配置是访问静态文件的令牌(settings.py)

STATIC_URL = '/static/'

其实就是static文件夹的路径(settings.py)

STATIC_URL='/static/'

STATICFILES_DIRS=[
    os.path.join(BASE_DIR,'static'),
    os.path.join(BASE_DIR,'static1'),
    os.path.join(BASE_DIR,'static2')
]

前端页面中得路径
/static/css/my.css

动态解析


{% load static %}
{% static 'css/my.css' %}

{% load static %}
 
<script src="{% static 'js/jquery_3.7.1_jquery.min.js' %}"></script>
<link rel="stylesheet" href="{% static 'bootstrap-3.4.1-dist/css/bootstrap.min.css' %}">
<script src="{% static 'bootstrap-3.4.1-dist/js/bootstrap.min.js' %}"></script

 

request对象的方法

request.method # 请求方式的  GET POST
request.POST.get()
request.POST.getlist()
request.GET.get()
request.GET.getlist()

 

<form action="" method="post">

request.method  # 获取请求方式
action: 1. 不写,朝当前地址提交
              2. 全写
              3. 只写后缀

post提交表单,前期先把下面的代码注释掉

MIDDLEWARE = [
    'django.middleware.security.SecurityMiddleware',
    'django.contrib.sessions.middleware.SessionMiddleware',
    'django.middleware.common.CommonMiddleware',
    # 'django.middleware.csrf.CsrfViewMiddleware',
    'django.contrib.auth.middleware.AuthenticationMiddleware',
    'django.contrib.messages.middleware.MessageMiddleware',
    'django.middleware.clickjacking.XFrameOptionsMiddleware',
]

print(request.POST)   # 获取以post请求方式提交的表单数据
   print(request.POST.get('username')) # kevin 获取以post请求方式提交的表单数据
   print(request.POST.get('password')) # 123 获取以post请求方式提交的表单数据

  print(request.POST.get('hobby')) #  ['a', 'b', 'c'],  获取以post请求方式提交的表单数据 


get获取默认拿到的是最后一个元素值

print(request.GET)
print(request.GET.get('a'))
print(request.GET.get('b'))
print(request.GET.get('c'))
print(request.GET.getlist('c'))
 
username = request.POST.get('username')
password = request.POST.get('password')
print(request.POST.getlist('hobby'))  #  获取以post请求方式提交的表单数据
request.method == 'POST'


 

Django链接数据库(__init__.py) 

1. 在配置文件中配置一个数据
DATABASES={
    'NAME':
    'HOST':
    'PORT':
    'USER':
    'PASSWORD':
    'CHARSET':
}

2. 在任意的__init__文件中条件两句话
import pymysql
pymysql.install_as_mysqldb()

3. opertions.py-------->会报错
decode------->encode 

Orm简介

对象映射模型
类-------->表名
对象-------->记录
属性-------->字段

在models.py文件中书写
class UserInfo(models.Model):
    aid = models.AutoField(primary_key=True)
    username = models.CharField(max_length=32)
  
  
迁移数据库两个命令
python3 manage.py makemigratinos
python3 manage.py migrate

字段的增删改查(写在另一篇了)

 

END 

相关文章:

  • 马尔可夫过程
  • Flink SQL --Flink 整合 hive
  • git命令汇总
  • Easyui DataGrid combobox联动下拉框内容
  • 修改浏览器滚动条样式--ios同款
  • 移动端APP版本治理
  • 设计模式——原型模式(Prototype Pattern)
  • 合肥中科深谷嵌入式项目实战——基于ARM语音识别的智能家居系统(二)
  • Leetcode刷题详解—— 图像渲染
  • Vatee万腾的数字化掌舵:Vatee科技引领未来的新高度
  • 【python】Django——templates模板、静态文件、django模板语法、请求和响应
  • python实现炒股自动化,个人账户无门槛量化交易的开始
  • Elasticsearch 外部词库文件更新
  • 依赖倒转原则接口隔离原则迪米特法则合成复用原则
  • MongoDB索引覆盖查询
  • AUTOSAR汽车电子嵌入式编程精讲300篇-面向车载CAN网络的路由和ECU刷写方法
  • openGauss学习笔记-123 openGauss 数据库管理-设置账本数据库-账本数据库概述
  • QT QSplashScreen
  • 4、创建第一个鸿蒙应用
  • [文件读取]lanproxy 文件读取 (CVE-2021-3019)
  • 贵州仁怀通报“正新鸡排鸡腿里全是蛆”:已对同类产品封存送检
  • 2000多年前的“新衣”长这样!马王堆文物研究新成果上新
  • 商务部回应美方加严限制中国芯片:敦促美方立即纠正错误做法
  • 陕西榆林:全力推进榆林学院升格榆林大学
  • 与总书记交流的上海人工智能实验室年轻人,在探索什么前沿领域?
  • 微软宣布全球裁员约3%:涉及约6000人,侧重经理层