框架必要的配置

import sys
from django.conf.urls import url
from django.conf import settings
from django.http import HttpResponse
from django.core.management import execute_from_command_line # 设置框架配置
settings.configure(
DEBUG= True, # 和flask的debug一样
SECRET_KEY= 'aaa', # 用于加密的字符串
ROOT_URLCONF=__name__, # 此配置为在当前文件里面找url映射的配置
MIDDLEWARE_CLASSES=(
'django.middleware.commom.CommonMiddleware',
'django.middleware.csrf.CsrfViewMiddleware',
'django.middleware.clickjacking.XFrameOptionsMiddleware',
)
)

实现访问hello/内容/,返回内容

# 实现访问返回访问请求中的参数
def hello(request, user):
return HttpResponse(user) # 通过正则匹配url,做视图映射
urlpatterns = (
url( r'^hello/(?P<user>\w+)/$', hello),
url(r'^$', index)
)

django的JsonResponse处理返回信息

from django.http  import JsonResponse
def test(request):
print(dir(request))
data = {
'path': request.path,
'method': request.method,
'scheme': request.scheme,
'host': request.get_host(),
'port': request.get_port(),
'cookies': request.COOKIES,
'get': request.GET,
'post': request.POST,
}
return JsonResponse(data) # 通过正则匹配url,做视图映射
urlpatterns = (
url( r'^test/$', test),
url( r'^hello/(?P<user>\w+)/$', hello),
url(r'^$', index)
)

请求

静态文件

项目结构

实现访问http://127.0.0.1:8888/hello/用户名/,输出html里的某些内容

html

<html>
<head>
<link rel="stylesheet" href="/static/hello.css">
<title>django with jinja</title>
</head>
<body>
<h2>这是测试</h2>
<p>我是用户:{{ user }}</p>
{% for h in hobbit %}
<p>爱好是:{{ h }}</p>
{% endfor %}
</body>
</html>

css

h2 {
background-color: red;
}

主程序,需要加入一些模板的配置

import os
import sys
from django.shortcuts import render
from django.conf.urls import url
from django.conf import settings
from django.core.management import execute_from_command_line BASE_DIR = os.path.dirname(__file__) # 定义当前工程目录为basedir # 设置框架配置
settings.configure(
DEBUG=True,
ALLOWED_HOSTS=['*'],
SECRET_KEY='aaa', # 用于加密的字符串
ROOT_URLCONF=__name__, # 此配置为在当前文件里面找url映射的配置
MIDDLEWARE_CLASSES=(
'django.middleware.commom.CommonMiddleware',
'django.middleware.csrf.CsrfViewMiddleware',
'django.middleware.clickjacking.XFrameOptionsMiddleware',
),
STATIC_URL='/static/', # 定义静态文件的存放目录,和flask一致
STATICFILES_DIRS=(os.path.join(BASE_DIR, 'static'),), # 静态文件目录,指向BASE_DIR/static(括号里的逗号不能省)
INSTALLED_APPS=('django.contrib.staticfiles',), # Django使用静态文件需要安装即在配置中录入此信息(括号里的逗号不能省)
# 模板的配置
TEMPLATES=[{
# 'BACKEND': 'django.template.backends.django.DjangoTemplates', # Django自带的模板引擎
'BACKEND': 'django.template.backends.jinja2.Jinja2', # Jinja2的模板引擎
'APP_DIRS': True, # APP_DIRS为True则默认app下的templates目录,否则使用下一行DIRS声明的目录
'DIRS': [os.path.join(BASE_DIR, 'templates')],
'OPTIONS': {}}]
) # 实现访问返回访问请求中的参数
def hello(request, user):
# return HttpResponse(user)
context = {
'user': user,
'hobbit': ['看书', '写代码']
}
return render(request, 'hello.html', context) # 通过正则匹配url,做视图映射
urlpatterns = (
# url( r'^test/$', test),
url(r'^hello/(?P<user>\w+)/$', hello),
# url(r'^$', index)
)

访问

												

测开之路四十七:Django之请求静态资源与模板的更多相关文章

  1. 测开之路四十三:ajax请求

    ajax固定套路 function http(url, data, method, success, fail) { data = method == 'GET' ? data : JSON.stri ...

  2. 测开之路四十八:Django之重定向与cookie

    基础配置与上一篇一致 404错误 定义一个error页面 <!DOCTYPE html><html lang="en"><head> <m ...

  3. 测开之路四十九:用Django实现扑克牌游戏

    用Django实现和之前flask一样的扑克牌游戏 项目结构 html <!DOCTYPE html><html lang="en"><head> ...

  4. 测开之路四十五:Django之最小程序

    安装Django库 Django最小程序 import sysfrom django.conf.urls import urlfrom django.conf import settingsfrom ...

  5. 测开之路七十七:性能测试蓝图之js

    //定义全局的editor = nullvar editor = null; //ace_editor的初始化函数function ace_editor() { var editor = ace.ed ...

  6. 测开之路九十七:js的引用方式

    第一种:引用外部js文件 准备一个js文件 <!-- 引用外部的js --><script src="../js/js01.js"></script& ...

  7. 测开之路八十七:HTML之a标签的用法

    初始化的HTML结构为,只需要在body里面加网页的标签和要显示的内容即可 <!DOCTYPE html><html lang="en"><head& ...

  8. 测开之路七十七:shell之if、case、for、while

    选择语句(if语句) 大于:-gt判断目录是否存在:-d if [ 判断条件 ]; then statement1 Statement2elif [ 判断条件 ]; then statement1 S ...

  9. 测开之路五十七:实现runner和测试报告

    准备测试用例 from fox.case import Casefrom src import Calculator class TestCalculator(Case): def setUp(sel ...

随机推荐

  1. 高级ACL访问控制列表

    实验拓扑: 配置: 基本配置做完之后搭建OSPF网络 R1: ospf 1 area 0 network 10.0.13.0 0.0.0.255 network 1.1.1.1 0.0.0.0 R2: ...

  2. mysql 数据库表结构对比语句

    判断两个数据库互相不存在的表 select a.TABLE_SCHEMA,a.TABLE_NAME from information_schema.TABLES a where a.TABLE_SCH ...

  3. CCNA 之 二 OSI七层模型

    OSI网际互联 OSI的概念 英文全称Open System Interconnect 开放系统互联参数模型,是由ISO国际标准化组织 定义的.它是个灵活的.稳健的和可互操作的模型,并不是协议,使用来 ...

  4. [eclipse相关] 001 - 启动+运行优化

    本随笔参考了其他博客内容,且在验证有效之下才或誊抄或摘录或加上自己经验组合而成. 参考博客: 1,http://zwd596257180.gitee.io/blog/2019/04/17/eclips ...

  5. SpringCloud-Eureka-服务注册是如何发起的

    原文:https://xsxy007.github.io Spring Cloud环境下,服务提供者和消费者启动后都会将自身注册到Eureka 一.将服务注册到Eureka 一个SpringBoot应 ...

  6. jquery的扩展,及编辑插件的书写格式

    <!DOCTYPE html><html lang="en"><head> <meta charset="UTF-8" ...

  7. vue脚手架安装

    1. 脚手架:  如何:   1. 安装脚手架的工具命令:      npm i -g @vue/cli   电脑安装完命令后  :  直接创建  vue create 文件夹名字   2. 用命令反 ...

  8. ApacheHttpServer出现启动报错:the requested operation has failed解决办法

    转自:https://www.jb51.net/article/21004.htm 原因一:80端口占用 例如IIS,另外就是迅雷.我的apache服务器就是被迅雷害得无法启用! 原因二:软件冲突 装 ...

  9. Linux知识-不断更新

    找到使用cpu最高的进程之使用cpu最高的线程的16进制号 shell命令行: ps -eo %cpu,pid | sort -n -k1 -r |head -n 1|awk '{print$2}'| ...

  10. vue,一路走来(11)--HTML5 History模式

    HTML5 History模式 项目中我用的是history模式. 默认 hash 模式 —— 使用 URL 的 hash 来模拟一个完整的 URL,于是当 URL 改变时,页面不会重新加载. 如果不 ...