[Day 29] 第二主餐 pt.5-django也能写前端,templates简易介绍

上一篇我们做完了背景执行跟定期执行
这一篇我们就要来教大家如何把html网页加入django了
用简易这个词的理由是
如果我们要把templates跟後端搭配从头开始介绍
那基本上可能要用一整个铁人赛来讲解
因此这里就只讲解最基本的网页设定
如果未来有机会再开一篇主题跟大家完整讲解前後端搭配
等一下我到底讲了几个主题说以後有机会再说
算了不重要啦,咱们累狗~

templates - 网页架设的好搭当

前面提到django写前後端不仅周全,还简单
这篇就跟大家讲解如何简单快速的建立前端网页
首先我们先到我们的资料夹列表,在manage.py的资料夹中再建立一个资料夹

为了方便我们就把资料夹叫做templates吧

然後我们在资料夹内加入index.html

接着开启html,将这段html代码加进去

<!DOCTYPE html>
<html>
    <head>
        <title>stonks index</title>
    </head>
    <body>
      <h1>欢迎来到财报查询站!</h1>
      请输入以下资料:<br>
      <form action="/stonks/get_stonks_data/" method="post">
        <label>年分: </label>
        <input id="team_name" type="text" name="name_field">
        <label>季度: </label>
        <input id="team_name" type="text" name="name_field">
        <label>公司代码: </label>
        <input id="team_name" type="text" name="name_field">
        <input type="submit" value="OK">
      </form>
    </body>
</html>

接下来我们要进到stonks_root资料夹改各种py档
首先是urls.py
我们前面提过不要让预设页面是404
所以我们加上url(r'^', views.index_page),
然後别忘了前面import要加上from . import views
所以现在你的urls.py应该长这样

from django.contrib import admin
from django.urls import path
from django.conf.urls import include, url
from . import views
admin.autodiscover()

urlpatterns = [
    url(r'^admin/', admin.site.urls),
    url(r'^stonks/', include('stonks_index.urls')),
    url(r'^', views.index_page),
]

下一个要改的是settings.py
首先我们要去修改TEMPLATES这个变数
把变数改成如下

TEMPLATES = [
    {
        'BACKEND': 'django.template.backends.django.DjangoTemplates',
        'DIRS': [os.path.join(BASE_DIR, 'templates').replace('\\', '/')], #修改成资料夹位址
        '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',
            ],
        },
    },
]

眼尖的你就会发现,我们只有改DIRS这个部分
因为这里代表你读HTML时要去找哪个资料夹
这里就代表去找这个django专案内的templates资料夹
然後由於我们有多用到os这个套件,所以也别忘了

import os

最後我们还要修改views.py
将views.py改成如下

from django.http import HttpResponse
from django.shortcuts import render

# Create your views here.
def index_page(request):
    return render(request, 'index.html')

这里就代表着当有人call这个function时
就会去templates的index.html找出来,然後return回去

到这里所有设定就算修改好啦
我们就把这些东西push上去,push三指令~

git add .
git commit -m "add templates"
git push

然後进入aws,pull

git pull

最後我们runserver
并且输入
http://你的IP位址:8000

看到这页面就成功啦

以上就是整个BeautifulSoup网页爬虫佐Django服务器框架附AWS云端运算服务的主要文章啦
下一篇就是心得总结
以及会变一些小魔术给大家看
想知道有甚麽小魔术,可以让你变成console上的魔术师(?
且待下回分解~


<<:  [Python 爬虫这样学,一定是大拇指拉!] DAY25 - 实战演练:关於多执行绪

>>:  DAY 25 Full Screen Modal - Follow Us

Day 11-Atlantis 做 Terraform Remote Plan & Remote Apply

使用 atlantis 做 terraform automation,Terraform Remot...

[Day12] Key Sequence Detection (KONAMI CODE)

[Day12] Key Sequence Detection (KONAMI CODE) 按键序列检...

2021-Day11. To be, or not to be. 让Chatbot也能开口成章吧~经典语录精选~

舒安表示:影片开始前几秒的那张投影片纯属失误(放错张...),第11天就开始精神恍惚了 0.0 ...

Day10 NodeJS-Pipe

Day9的时候说明了Stream(串流)和Buffer(缓冲)的概念,今天作为延伸来看一下Pipe。...

Day 1 序言及基本运算元件

我很早就开始接触组合语言,但没有学太久,就没有再碰了,当初学组合语言的原因,是觉得组合语言是人与机器...