开始学习Django,配置静态登录页面

准备阶段

众所周知,Django是一个重量级的设备齐全的web开发框架。在学习Django前我们需要具备如下的知识点:

  • python基础编程
  • 并发
  • 网络编程
  • HTTP协议的一些基础知识
  • 前端的基础知识(html+css+js)

这里主要是http相关的事情,首先,我们需要知道当我们在浏览器输入地址后到浏览器显示内容所发生的操作。

  1. 首先, DNS域名服务器解析地址,获取服务器
  2. 计算机尝试连接服务器
  3. 连接成功后,发生请求
  4. 服务器收到请求,并返回响应数据
  5. 计算机断开TCP连接
  6. 计算机通过服务器返回的数据渲染页面

http的请求方法,主要有八种,但是最常用的只有两种

  • get 发送请求数据
  • post 发送响应数据
  • head
  • put
  • delete
  • options
  • trace
  • connection

http状态码

  • 1xx处理: 服务器收到后继续处理
  • 2xx成功: 服务器成功接收、处理、理解请求
  • 3xx重定向:服务器不做继续处理
  • 4xx请求错误:请求数据有误(文件不存在、域名有问题)
  • 5xx服务器错误:服务器发生问题(机房突然断电)

http/https地址解析

https://deepnote.com/project/926fc86b-4ba5-44c2-b77b-c9f6d3e6ab7d#%2Fstudy%2Fstudy1213.ipynb

  • https:协议
  • //: 层级划分符
  • 访问资源的凭证信息,表示特殊权限才能访问(默认没有)
  • deepnote.com: 服务器(域名)
  • 端口号,http默认80,https默认443
  • project/926fc86b-4ba5-44c2-b77b-c9f6d3e6ab7d#%2Fstudy%2Fstudy1213.ipyn: 文件路径
  • ?key=value&...: 查询
  • #xx:片段

http请求

我们可以知道http请求的格式为:

请求方式 路径 协议版本\r\n
。。。请求头\r\n
\r\n
。。。。请求数据

可以对着查看下面的:

# 请求发送的数据
'''
GET / HTTP/1.1
Host: 127.0.0.1:8888
Connection: keep-alive
Cache-Control: max-age=0
Upgrade-Insecure-Requests: 1
User-Agent: Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/86.0.4240.111 Safari/537.36
Accept: text/html,application/xhtml+xml,application/xml;q=0.9,image/avif,image/webp,image/apng,*/*;q=0.8,application/signed-exchange;v=b3;q=0.9
Sec-Fetch-Site: none
Sec-Fetch-Mode: navigate
\Sec-Fetch-User: ?1
Sec-Fetch-Dest: document
Accept-Encoding: gzip, deflate, br
Accept-Language: zh-CN,zh;q=0.9 \'''

Http响应

我们可以知道响应的主要格式为:

协议版本 响应码 状态描述\r\n
响应行\r\n
\r\n
响应数据

可以查看如下的代码:

from socket import *

if __name__ == '__main__':
s = socket() s.bind(('localhost', 8888))
s.listen() while True: new_socket, new_addr = s.accept()
data = new_socket.recv(1024) new_socket.send(b"""HTTP/1.1 200 OK\r\ncontent-type:text/html;charset=utf-8\r\n\r\n""") # 注意回复http响应的格式
# 粘包
new_socket.send("""
<!DOCTYPE html><html lang="zh-CN"><head><meta charset="utf-8"></head><body><h1>哈哈哈哈</h1></body></html>
""".encode('utf-8'))
s.close()

Django

首先我们需要安装Django:

pip install Django -i 源地址(清华源、豆瓣)# 加快下载速度

安装好以后,创建项目:

假设我们项目取名为web_test,那么我们可以看到我们存在着:2个文件夹(templates、web_test)和一个manager.py的文件。

我们点击如下地方:

然后浏览器框输入:127.0.0.1:8000,若没有什么其他的错误就表示安装完成了。

其中我们最主要使用的就是setting.py和urls.py,其中前者是对于一些路径的配置,而后者则是对于浏览器要请求的页面进行一个返回,比如:

其中:index和login都是可以访问的,我们可以直接在浏览器输入:127.0.0.1/index或者127.0.0.1/login进行访问。

接下来就是配置一个静态的登录页面,效果如下:

首先,我们在bootstrap上找到模板,并把body的代码复制下来,并下载bootstrap。

键盘上按下F12,然后复制body里的内容:

然后再templates里创建一个login.html,并把内容粘贴进去,如下:

然后在setting.py的最后一句进行如下设置,并且创建一个statc文件夹用于存放静态的css、js、images,注意:每一个页面都应该有一个static文件夹:



在static文件夹中创建一个plugins文件夹,并把下载的bootstrap解压进去,如下:



然后引入相应的css文件:



另外,在urls.py文件中,每一个页面都应该有一个处理的函数,如下:



这里需要导包:from django.shortcuts import render

最后的话,在pycharm中点击那个绿色的小三角,并在浏览器输入:127.0.0.1:8000/login 就可以看到效果啦!!!!

若有什么问题请评论区回复。。。

开始学习Django,配置静态登录页面的更多相关文章

  1. django配置静态文件

    django配置静态文件 参考文章链接:http://blog.csdn.net/hireboy/article/details/8806098

  2. django配置静态文件的两种方法

    方法一:按照django配置静态文件的方法,可以在APP应用目录下创建一个static的文件夹,然后在static文件夹下创建一个和APP同名的文件夹,如我有一个blog的django项目,在下面有一 ...

  3. django配置*app*登录案例*orm简用

    1.静态文件的配置和使用 1.静态文件的配置和使用 没有css样式: 添加样式 结果: <html lang="en"> <head> <meta c ...

  4. 微信小程序相关一、模仿京东静态登录页面

    一.培训的第一天,基本上没有什么最新的东西,但是看到老师的代码收获的确实是不少. 1.1.首页代码很简洁,将共有的样式都提取的很好. 1.2.其次是每一个小块写样式的时候用到了好多子代选择器和后代选择 ...

  5. Django配置静态文件(CSS\js)及Django调用JS、CSS、图片等静态文件

    1 新建一项目: root@python:django-admin.py startproject csstest root@python:cd csstest root@python:ls csst ...

  6. Django配置邮箱登录

    1.settings下配置 # AUTH 方法(支持邮箱登录) AUTHENTICATION_BACKENDS = ('users.views.CustomBackend',) 2.views下逻辑如 ...

  7. django在验证登录页面时遇到的数据查询问题

    数据库查询时针对不存在的用户名进行验证 django在查询数据库时,可以使用get和filter两种方法. 两者的区别 当数据库内不存在该数据时,get会返回异常,而filter会返回空. 当数据库内 ...

  8. (转).net程序员转战android第三篇---登录模块之静态登录

    这一篇我将分2个部分记录登录界面,第一部分是静态登录, 这部分将如何从界面布局.控件使用.文件关系.数据验证.登陆实现等5小块记录. 第二部分是动态登录,这块会基于上面的4小块,在数据验证不是静态数据 ...

  9. .net程序员转战android第三篇---登录模块之静态登录

    这一篇我将分2个部分记录登录界面,第一部分是静态登录, 这部分将如何从界面布局.控件使用.文件关系.数据验证.登陆实现等5小块记录. 第二部分是动态登录,这块会基于上面的4小块,在数据验证不是静态数据 ...

随机推荐

  1. Qiskit 安装指南

    内容参考官方文档 https://qiskit.org/documentation/install.html conda create -n name_of_my_env python=3 创建虚拟环 ...

  2. java基本权限指南之:文件和共享目录的基本权限

    简介 java程序是跨平台的,可以运行在windows也可以运行在linux.但是平台不同,平台中的文件权限也是不同的.windows大家经常使用,并且是可视化的权限管理,这里就不多讲了. 本文主要讲 ...

  3. MathType中怎么打约化普朗克常数ħ

    普朗克常数记为ħ,是一个物理常数,用以描述量子大小.在量子力学中占有重要的角色,马克斯·普朗克在1900年研究物体热辐射的规律时发现的.如果要打出关于约化普朗克常数ħ的公式,就需要用到专业的公式编辑器 ...

  4. 【Flask】学习笔记(一)入门

    Flask 入门基础 Flask是一个轻量级的后台框架,用Flask作为Web框架的公司有Netfix,Reddit等,国内豆瓣,果壳等.使用flask的公司列表.Flask 有主要的两个依赖,一个是 ...

  5. Win10定期执行python程序

    一:windows10自带的计划程序 第一步:在 计算器右击 --> 选择管理 进入如下界面: 第二步:选择 系统工具 -->  任务计划程序 ,点击右侧的  "创建基本任务&q ...

  6. Nginx添加fastdfs-nginx-module模块

    系统:Ubuntu 20.04 Nginx版本:1.18.0 要添加的模块:fastdfs-nginx-module 思路:configure参数下包括Nginx已安装的模块信息,通过编辑config ...

  7. 迭代器原理gif

  8. http 文件上传

    参考https://www.cnblogs.com/yuwei0911/p/8601542.html

  9. Intel s2600系列做虚拟化需要注意的item

    Intel s2600cw\cp主板做虚拟化BIOS需要设置以下选项,附件为截图供参考. -->vt,cpu虚拟化,默认关闭,需要确保开启 -->ht,cpu超线程,默认开启,需要确保开启 ...

  10. Less从入门到精通——变量与混合

    变量(variables) Less中采用" @ "定义变量,使用时直接使用"@命名符". 作为普通变量 // 命名: @color:red; // 调用: d ...