小白必会三板斧

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. C++-POJ3735-Training little cats[矩阵乘法][快速幂]

    矩阵快速幂,主要是考构造.另外,swap总是写龊? 为什么?干脆放弃了.唉,我太难了. 思路:操作e和s都很好想,主要是g操作 我们可以额外空出一位,记为1,每次要加1,就对这个额外的1进行计算即可 ...

  2. Jungle Roads POJ - 1251 模板题

    #include<iostream> #include<cstring> #include<algorithm> using namespace std; cons ...

  3. webpack 之使用vue

    现在,我们希望在项目中使用vuejs,那么必然需要对其有所依赖,所以需要先就行安装 注:因为我们后续是在实际项目中也会使用vue的,所以并不是开发时依赖 npm install vue --save ...

  4. 有一个树形结构,实现一个方法getKeys(data,str),获取字符串str在data中的所有上级节点的名称

    有一个树形结构,实现一个方法getKeys(data,str);获取字符串str在data中的所有上级节点的名称,例如: getKeys(data,'str1') 返回 ‘key1' getKeys( ...

  5. C语言strcat()函数:字符串连接(拼接)

    C语言strcat()函数:字符串连接(拼接)   C语言 strcat() 函数用来将两个字符串连接(拼接)起来. 头文件:string.h 语法/原型: char*strcat(char* str ...

  6. Python入门6 —— 流程控制 - if判断

    代码块: 1.代码块指的是同一级别的代码,在python中用缩进相同的空格数(除了顶级代码块无任何缩进之外,其余代码块都是在原有的基础上缩进4个空格)来标识同一级的代码块 2.同一级别的代码块会按照自 ...

  7. go语言 base64编码解码

    package main import ( "encoding/base64" "fmt" ) func main() { str := "Man&q ...

  8. 题解【洛谷P1314】[NOIP2011]聪明的质监员

    题面 题解 不难发现,\(W\)增大时,\(Y\)值会随之减小. 于是考虑二分\(W\). 如何\(\mathcal{O}(N)check?\) 每一次前缀和记录一下\(1-i\)之间\(w_i \g ...

  9. C++-随机数的产生

    一.随机数 以前学C语言的时候感觉随机数没啥用的,现在想想是自己无知啦,在帮人做一个项目的时候发现随机数还是相当有用的,我们可以利用随机数来生成大量的测试数据. 有两种方法可以让你的程序每次运行结果不 ...

  10. SpringBoot开发快速入门

    SpringBoot开发快速入门 目录 一.Spring Boot 入门 1.Spring Boot 简介 2.微服务 3.环境准备 1.maven设置: 2.IDEA设置 4.Spring Boot ...