续上篇,用Django创建了一个Web,我们肯定想展示自己的页面,简单点,我们想看到自己的HelloWorld。此处要从项目的配置说起,方法和路径配对了,展现页面分分钟的事情。

先上效果图吧:

   

项目结构:

实现:

首先我们在App同级目录建文件夹templates存放我们的html页面,index.html 简单写写东西,如下:

index.html

<!DOCTYPE html>
<html lang="en">
<head>
<meta charset="UTF-8">
<title>Title</title>
</head>
<body>
hello world
{{ hello }}
</body>
</html>

{{hello}} 之所以加大括号是方便我们动态生成页面,用过不同类的渲染引擎,大相径庭。

html写好了,我们要写配置文件了,让程序在启动后能跳转到templates下的这些页面,这个可以在setings.py里更改;

setings.py  中TEMPLATES更改如下

TEMPLATES = [
{
'BACKEND': 'django.template.backends.django.DjangoTemplates',
'DIRS': [BASE_DIR+"/templates",], #更改处,寻址templates文件夹
'APP_DIRS': True,
'OPTIONS': {
'context_processors': [
'django.template.context_processors.debug',
'django.template.context_processors.request',
'django.contrib.auth.context_processors.auth',
'django.contrib.messages.context_processors.messages',
],
},
},
]

然后就是写方法响应http请求了,类似于java中的Controller 说白了就是一些接口。不过Python接口长这样,可能目前比较白,理解偏差比较大。

from django.contrib import admin
from django.urls import path
from movieApp import views #导入我们自己的views.py
urlpatterns = [
path('admin/', admin.site.urls),
path('', views.index, name='index'),
path('hello', views.hello, name='welcome') #此行为增加的
]

看到此,深深折服Python代码的简短啊,Python也有强大的各种封装包,大道至简的感觉。简单分析一下这段代码:

urlpatterns = [
# path('正则表达式', 函数,参数,别名)
path('hello', views.hello, name='welcome')
]
  • 一个正则表达式字符串
  • 一个可调用对象,通常为一个视图函数或一个指定视图函数路径的字符串
  • 一个可选的要传递给视图函数的默认参数(字典形式)
  • 一个可选的name参数

然后我们看一下views.py里写了些什么东东:

from django.shortcuts import render
from django.shortcuts import HttpResponse #此行增加
# Create your views here.
def hello(request): #此函数增加
return render(request,'index.html',{'hello':'hello 慢城'}) def index(request): #此函数增加
return HttpResponse('welcome play my games')

依然短的有点不适应,但是的确好用,这就是Python吧。

这些都改完后,执行命令行:

python manage.py runserver

打开浏览器输入:

http://localhost:8000/

http://localhost:8000/hello

http://localhost:8000/admin

测试一下,完全OK。http://localhost:8000/admin跳转的是登录界面,这个应该是Django封装自带的,有时间再研究。在案例学Python--案例四:Django实现一个网站的雏形(3)中我们就会引入数据库配置,我想应该也会写点js啥的吧,页面不能太丑吧。

案例学Python--案例四:Django实现一个网站的雏形(2)的更多相关文章

  1. 案例学Python--案例四:Django实现一个网站的雏形(1)

    第一次用python的Web框架,也是第一次听说Django,参考菜鸡教程和一些博客,倒腾了半天,算是有一个雏形.数据基于昨天爬的豆瓣电影信息,详见案例三. Python版本:3.7.1 Django ...

  2. django配置一个网站建设

    第一步: 安装数据库MySQL,也可以使用pycharm自带的数据库sqllite,大项目要使用数据库.安装请参考上篇. 数据库在pycharm中驱动设置,setting文件中修改驱动文件密码等信息. ...

  3. 案例学python——案例一:抓图

    最近项目不那么紧张,有时间来研究一下Python,先前断断续续的自学了一段时间,有些浅基础.刚好在码云上看到比较适合的案例,跟着案例再往前走一波. 案例一:爬虫抓图 开发工具:PyCharm    脚 ...

  4. 案例学python——案例三:豆瓣电影信息入库

    闲扯皮 昨晚给高中的妹妹微信讲题,函数题,小姑娘都十二点了还迷迷糊糊.今天凌晨三点多,被连续的警报声给惊醒了,以为上海拉了防空警报,难不成地震,空袭?难道是楼下那个车主车子被堵了,长按喇叭?开窗看看, ...

  5. 案例学python——案例二:连接数据库MySql

    调侃的话:案例一跑完之后,欣赏把玩了一番.人就有点飘飘然,昨天除了做饭吃饭,就是玩三国杀,江郎才尽,今天周一,不飘了,敲点代码,看看Python操作数据库有啥不一样的. 前期准备: 1.数据库 电脑上 ...

  6. python之简单爬取一个网站信息

    requests库是一个简介且简单的处理HTTP请求的第三方库 get()是获取网页最常用的方式,其基本使用方式如下 使用requests库获取HTML页面并将其转换成字符串后,需要进一步解析HTML ...

  7. 利用django创建一个投票网站(四)

    创建你的第一个 Django 项目, 第四部分 这一篇从第三部分(zh)结尾的地方继续讲起.我们将继续编写投票应用,专注于简单的表单处理并且精简我们的代码. 编写一个简单的表单 让我们更新一下在上一个 ...

  8. Python分布式爬虫打造搜索引擎完整版-基于Scrapy、Redis、elasticsearch和django打造一个完整的搜索引擎网站

    Python分布式爬虫打造搜索引擎 基于Scrapy.Redis.elasticsearch和django打造一个完整的搜索引擎网站 https://github.com/mtianyan/Artic ...

  9. 利用django创建一个投票网站(三)

    创建你的第一个 Django 项目, 第三部分 这一篇从第二部分(zh)结尾的地方继续讲起.我们将继续编写投票应用,并且聚焦于如何创建公用界面--也被称为"视图". 设计哲学 Dj ...

随机推荐

  1. linux 开机自启动脚本

    在/etc/rc.local文件中添加自启动命令(其中一种方法) 1.案例,就用博主本人之前发的博文 “nginx + flask + uwsgi + centos + python3 搭建web项目 ...

  2. [20171113]修改表结构删除列相关问题4.txt

    [20171113]修改表结构删除列相关问题4.txt --//连续写了3篇修改表结构删除列的相关问题,链接如下: http://blog.itpub.net/267265/viewspace-214 ...

  3. JMeter—系统性能分析思路(十三)

    参考<全栈性能测试修炼宝典JMeter实战>第九章 性能监控诊断 第二节 系统性能分析思路和第三节 定位分析 系统在工作负载中的性能受到许多因素影响,处理器速度.内存容量.网络或磁盘I/O ...

  4. 03-14_WLST配置现有的Domain

    本文重点: WLST在线模式配置现有的domains. WLST离线模式配置现有的domains.         1.WLST在线模式配置现有的domains 由于和一个活动的domain进行交互, ...

  5. 【HANA系列】SAP HANA XS使用服务器JavaScript Libraries详解

    公众号:SAP Technical 本文作者:matinal 原文出处:http://www.cnblogs.com/SAPmatinal/ 原文链接:[HANA系列]SAP HANA XS使用服务器 ...

  6. server 2008 软阵列

    RAID0:没有容错功能,等.两块以上的硬盘.RAID1:不能提高速度,有容错功能,等.注意:只能用两块硬盘,有的地方说可以用两块以上,你不信试试三块硬盘,肯定添加不了,但是可以做raid10.RAI ...

  7. Windows:Oracle 11g 备份脚本

    @echo off echo ================================================ echo Windows环境下Oracle数据库的自动备份脚本 echo ...

  8. mybatis 字段类型Data相

    在项目中查询时间段的sql语句(时间类型为datetime或date)(数据库中的时间类型): <if test="beginTime!=null and beginTime!=''& ...

  9. IDEA 如何查看一个类里面的所有方法

    快捷键:Alt+7

  10. 【PAT】B1073 多选题常见计分法(20 分)

    此处为我的存储结构,只提供一种思路,二维数组存储所有数据 #include<stdio.h> #include<string.h> #include<map> #i ...