小白必会三板斧

from django.shortcuts import render,HttpResponse,redirect

HttpRespone:返回字符串

render:返回html页面

redirect:重定向

静态文件配置

静态文件:网站所用到的,自己写好js,自己写好css,第三方的框架bootstrap fontwesome sweetalert

通常情况下网站所用到的静态文件资源统一都放在static文件下

STATIC_URL='/static' 是访问静态资源的接口前缀

只要你想要访问静态资源你就必须以static开头

手动配置静态文件访问资源

STATICFILES_DIRS=[

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

os.path.join(BASE_DIR,'static1')

]

接口前缀,动态解析

{%load static%}

<\link rel="stylesheet" href="{% static'bootstrap/css/bootstrap.min.css'%}">

<\script src="{% static 'bootstrap/js/bootstrap.min.js %'}">

form表单操作

form表单 action参数可以写的形式

​ 1、不写 默认朝当前地址提交

​ 2、只写后缀/index/

​ 3、写全路径

form表单默认朝后端提交的方式,默认是get请求

缺点:

​ 1、不安全

​ 2、get请求携带的参数有大小限制(最大不能超过4kb)

​ 前期你如果提交post请求,你就去settings.py文件注释掉一个中间件

​ 'django.middleware.csrf.CsrfViewMiddleware',

request对象及方法

前后端数据交互

如何获取请求方式

1、获取post请求携带的数据

request.POST

2、获取get请求携带的数据

request.GET

get和post在后端获取用户数据的时候,规律是一样的

request.POST.get('username')默认只取列表的最后一个元素

如果你想将列表完整的取出,你必须用getlist()

pycharm连接数据库 django连接数据库

第一步配置文件中配置

DATABASES={

'default':{

'ENGINE':'django.db.backends.mysql',

'NAME':'数据库名',

'USER':'root',

'PASSWORD':'',

'HOST':'127.0.0.1',

'PORT':3306,

'CHARSET':'utf8'

}

}

第二步

django默认使用的是mysqldb连接数据库,但是该模块不支持了

所以你要告诉django不要用mysqldb该用pymysql连接

可以在项目下面的__init__.py也可以在应用名下面的__init__.py文件中指定

import pymysql

pymysql.install_as_MySQLdb()

django orm简介

orm对象关系映射

类 数据库的表

对象 表的记录

对象获取属性 记录的某个字段对应的值

优点:能够让一个不会数据库操作的人,也能够简单快捷去使用数据库

缺点:由于封装程度太高可能会导致程序的执行效率偏低

​ 有时候结合项目需求 可能需要你手写sql语句

注意事项:

​ 1、django的orm不会自动帮你创建库,库需要你自己手动创建

​ 表会自动帮你创建 ,你只需要书写符合django orm语法的代码即可

在应用下所在的models.py中书写类

数据库迁移

python manage.py makemigrations

python manage.py migrate

只要你在models.py中修改了跟数据库相关的代码,你就必须重新开始执行上面两条命令

Django之form表单操作的更多相关文章

  1. Django的form表单

    html的form表单 django中,前端如果要提交一些数据到views里面去,需要用到 html里面的form表单. 例如: # form2/urls.py from django.contrib ...

  2. 转载:Django之form表单

    转载: 一.使用form类创建一个表单 先定义好一个RegForm类: forms.py from django import forms # 导入forms类 class NameForm(form ...

  3. Django 11 form表单(状态保持session、form表单及注册实现)

    Django 11 form表单(状态保持session.form表单及注册实现) 一.状态保持 session 状态保持 #1.http协议是无状态的:每次请求都是一次新的请求,不会记得之前通信的状 ...

  4. Django--分页器(paginator)、Django的用户认证、Django的FORM表单

    分页器(paginator) >>> from django.core.paginator import Paginator >>> objects = ['joh ...

  5. Day19 Django之Form表单验证、CSRF、Cookie、Session和Model操作

    一.Form表单验证 用于做用户提交数据的验证1.自定义规则 a.自定义规则(类,字段名==html中的name值)b.数据提交-规则进行匹配代码如下: """day19 ...

  6. django中form表单的提交:

    一,关于表单: 表单在百度百科的解释:   表单在网页中主要负责数据采集功能.一个表单有三个基本组成部分: 表单标签:这里面包含了处理表单数据所用CGI程序的URL以及数据提交到服务器的方法. 表单域 ...

  7. Django之form表单组件

    Form介绍 我们之前在HTML页面中利用form表单向后端提交数据时,都会写一些获取用户输入的标签并且用form标签把它们包起来. 与此同时我们在好多场景下都需要对用户的输入做校验,比如校验用户是否 ...

  8. django之form表单验证

    django中的Form一般有两种功能: 输入html 验证用户输入 #!/usr/bin/env python # -*- coding:utf- -*- import re from django ...

  9. Django的form表单之文件上传

    在生成input标签的时候可以指定input标签的类型为file类型 <!DOCTYPE html> <html lang="en"> <head&g ...

随机推荐

  1. ALSA lib-io plugin

    https://www.alsa-project.org/alsa-doc/alsa-lib/pcm_external_plugins.html External Plugin: I/O Plugin ...

  2. Qtree1 - 树链剖分

    树剖裸题?(复习练练手) // luogu-judger-enable-o2 #include <bits/stdc++.h> using namespace std; ],size[], ...

  3. 使用Vmware过程中,突然网络连接不上问题

    ###第一次的解决方法: 1.我一般过一段时间就会对虚拟机进行拍快照备份:在使用过程中,如果没有太大变化,恢复网络正常的快照一般是能解决问题的,但是要记得恢复快照之前要备份你已经修改过的所有东西,以防 ...

  4. linux - python - 异常:error while loading shared libraries

    问题描述 error while loading shared libraries: libpython2.7.so.1.0: cannot open shared object file: No s ...

  5. update(十)

    Vue 的 _update 是实例的一个私有方法,它被调用的时机有 2 个,一个是首次渲染,一个是数据更新的时候:由于我们这一章节只分析首次渲染部分,数据更新部分会在之后分析响应式原理的时候涉及._u ...

  6. django实现简易登录注册

    经过一些文档的理解,以及一些时间的琢磨.我觉得可以用django做一些小项目了 先说说登录功能吧. 先创建一个app,用admin命令 在cmd打开到manage.py同级目录下,django-adm ...

  7. C++记录(二)

    1.算术移位和逻辑移位. 逻辑移位是只补0,算术移位是看符号,负数补1,正数补0(讨论的是右移的情况下). 负数左移右边一样补0.如果遇到位运算的相关题目需要对int变量进行左移而且不知道正负,那么先 ...

  8. CF-478C Table Decorations (贪心)

    Table Decorations Time limit per test: 1 second Memory limit per test: 256 megabytes Problem Descrip ...

  9. ACWing 238 银河英雄传说

    最近带权并查集这块比较薄弱,直接看食物链看不懂,就老实一步步来了. 有一个划分为N列的星际战场,各列依次编号为1,2,…,N. 有N艘战舰,也依次编号为1,2,…,N,其中第i号战舰处于第i列. 有T ...

  10. arm-linux-gcc

    搭建交叉编译环境,即安装.配置交叉编译工具链.在Ubuntu环境下编译出嵌入式Linux系统所需的操作系统.应用程序等,然后再上传到目标机上. 交叉编译工具链是为了编译.链接.处理和调试跨平台体系结构 ...