Django学习路7_注册app到能够在页面上显示app网页内容

在根目录下创建一个 app3 
app3 是新 app 的名字

创建一个 urls.py 
在 urls.py 中添加 urlpatterns 列表
容纳需要显示在页面上的函数

from django.conf.urls import url
from app3 import views

urlpatterns = [
    url(r'index',views.index)
]

注:
r'在网页上的函数名',views.py 中的函数名

在 views.py 中创建刚刚创建好的 index 函数
注: views.函数名 , 函数名是什么,这里的函数就创建什么名字

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

# Create your views here.
from django.template import loader


def index(request):
    three_index = loader.get_template('app3_index.html')
    result = three_index.render()
    print(result)
    return HttpResponse(result)

注:
loader.get_template 获取模板
three_index.render() 渲染为 html 文档

模板在 templates 中进行创建

在 app3 目录下,创建 templates 文件夹,存放 html 文档

app3_index.html

注:
文档名字随意,但是模板文件夹名字一定是 templates

app3_index.html 

<!DOCTYPE html>
<html lang="en">
<head>
    <meta charset="UTF-8">
    <title>App3 index</title>
</head>
<body>
<h2>加油</h2>
</body>
</html>

在项目的 settings 中的 INSTALLED_APPS 列表中,添加 app3

INSTALLED_APPS = [
    'django.contrib.admin',
    'django.contrib.auth',
    'django.contrib.contenttypes',
    'django.contrib.sessions',
    'django.contrib.messages',
    'django.contrib.staticfiles',
    'app.apps.AppConfig',
    'app2.apps.App2Config',
    'app3.apps.App3Config'
]

注:
也可以写为 'app3' 

在 项目的 urls.py 中导入 app3 在页面上进行显示

from django.contrib import admin
from django.urls import path, include

from app import views

urlpatterns = [
    path('admin/', admin.site.urls),
    path(r'hello',views.hello),
    path(r'index',views.index),
    path(r'home',views.home),
    path(r'app2',include('app2.urls')),
#     导入一组数据,使用 include
    path(r'app3',include('app3.urls'))
]

注:
使用 include('app名字.urls') 可以导入整个 app 包

扩展:
 app3 下的 apps.py 内容


from django.apps import AppConfig

class App3Config(AppConfig):
    name = 'app3'

运行:
python manage.py runserver

输入
http://127.0.0.1:8000/app名字/页面显示的名字

 
http://127.0.0.1:8000/app3/index

 

 


2020-05-08

posted @ 2020-05-08 11:27  Hany47315  阅读(238)  评论(0)    收藏  举报