Django的app配置

完成Django的部署后已经可以实现公网访问了,下面我们将对项目内容进行填充。

主要任务是:配置app,实现网页展示,共四步

目录

1. APP配置

第一步:创建app

第二步:注册app

2. url路径与视图配置

第三步:配置url路径

第四步:配置视图函数

3. 视图函数

i. 直接在网页返回文本

ii. 返回网页

iii. 触发功能

4. 静态文件

i. 必须命名为static

ii. 静态资源调用方法:


创建完django项目后文件结构如下:

  • 最外层的 Supernova/ 根目录只是项目的容器,创建项目后依然可以自定义。 
  • manage.py: 管理 Django 项目的命令行工具,不需要修改。
  • 里面一层的 Supernova/ 目录包含你的项目,它是一个纯 Python 包。它的名字就是当你引用它内部任何东西时需要用到的 Python 包名。 (比如 Supernova.urls).
  • Supernova/__init__.py:一个空文件,告诉 Python 这个目录应该被认为是一个 Python 包。
  • Supernova/settings.py:Django 项目的配置文件,需要修改。
  • Supernova/urls.py:项目的 URL 声明,像网站“目录”,频繁修改。
  • Supernova/asgi.py:项目运行在 ASGI 兼容的 Web 服务器的入口,基本用不到。
  • Supernova/wsgi.py:项目运行在 WSGI 兼容的Web服务器的入口,基本用不到。

拓展资料:

1. APP配置

app主要是不同功能的分区,小项目一个就够用

第一步:创建app

python3 manage.py startapp 分区名称

Linux思想:没有回应就是最好的回应

此时app01分区自动创建成功

admin.py:后台管理工具。可以登录后台管理model和数据库
apps.py:app名称的配置文件。定义了app名称
models.py:模型文件。里面放的都是数据库表的映射
tests.py:测试文件。测试用的,目前没有内容
views.py:【重要】视图函数文件。从url.py跳转过来触发对应的功能函数,可以在网页返回各种内容,或者触发服务器程序(app编辑最频繁的文件)

第二步:注册app

将app01写入项目setting.py

保存即注册成功

2. url路径与视图配置

第三步:配置url路径

url路径触发指定的视图函数

多app配置方法一:

第四步:配置视图函数

视图即网页呈现的内容

HttpResponse可以在网页上直接返回文本

浏览器访问:116.62.170.204:8080/home/

访问路径结构:ip+端口+url路径

3. 视图函数

i. 直接在网页返回文本

def home(request):

    return HttpResponse("Welcome to new world!")

ii. 返回网页

需要手动创建一个网页文件夹templates用于存放html文件

  1. 必须命名为templates
  2. 该文件夹可以在app目录下,也可以在Supernova根目录下
  3. 程序优先去项目的根目录下寻找html文件
  4. 然后根据app的注册顺序去app的目录下templates下寻找
  5. 小项目建议只在app下建templates文件夹,方便管理
  6. 用pycharm创建项目的会指定在根目录寻找
  7. 根据需要更改setting.py即可

配置教程:Django中Settings中Templates的路径设置

先在templates文件夹里写好html文件

定义视图函数,指定html文件

url路径也得添加好

保存

浏览器访问116.62.170.204:8080/guidance/

到这里已经可以实现在公网访问指定网页了,下一部分我们将丰富html网页内容

iii. 触发功能

以返回ip为例

def myip(request):
    values = request.META.items()
    html = []
    # 返回全部request信息
    # for k, v in values:
        # html.append('<tr><td>%s</td><td>%s</td></tr>' % (k,v))
    # 返回真实地址
    if request.META.get('HTTP_X_FORWARDED_FOR'):
        html.append('<tr><td>IP地址</td><td>%s</td></tr>' % request.META['HTTP_X_FORWARDED_FOR'])
    # 返回直接地址
    else :
        html.append('<tr><td>IP地址</td><td>%s</td></tr>' % request.META['REMOTE_ADDR'])
    
    return HttpResponse('<table>%s</table>' % '\n'.join(html))

这里可以自定义各种功能,比如接受post请求实现文件断点上传,view函数可以实现非常丰富的功能,不一例举,大家自由探索吧。

4. 静态文件

需要手动在app目录下创建static静态资源文件

其中css,js,img,viedo都是常用的静态资源,建立各自的文件夹方便管理

i. 必须命名为static

因为配置文件里已经写好了文件名

ii. 静态资源调用方法:

(“{ }“是django一种模板语法

声明:在开头声明静态文件路径

{% load static %}

调用:调用静态路径

{% static "video/OWSvideo.mp4" %}

示例1

示例2

模板语法讲解:templates模板语法-CSDN博客

 网页模板网站: 588+ Free HTML CSS Website Templates by TemplateMo

拓展文献:

Django手动给项目重命名

Django 更改 Django 项目名称

Django教程——manage.py命令

  • 10
    点赞
  • 13
    收藏
    觉得还不错? 一键收藏
  • 打赏
    打赏
  • 1
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

库尔特哥德尔的破壁人

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值