【python常用框架--Django】django入门实现

创建django项目:django-admin startproject dj
启动服务:python manage.py runserver [端口号],默认8000
创建app:python manage.py startapp app01
在settings.py 的 INSTALLED_APPS,列表中添加app名,完成注册
详细操作: https://blog.csdn.net/qq_51543898/article/details/126242598?spm=1001.2014.3001.5501

编写路由

编写项目同名文件夹下的urls.py文件,列出站点目录
引用app01中的views文件,path中指定站点名和引用到的函数
在这里插入图片描述
引用名为空时,就是默认地址,我这里是:http://127.0.0.1:8000
如果不指定,则会显示page not found

编写视图函数文件

编写app01文件夹下的views.py文件

  1. 可以直接在函数中写网页内容,需要导入模块
    from django.shortcuts import HttpResponse
    在这里插入图片描述
    启动服务得到的页面:
    在这里插入图片描述
  2. 导入html文件,需要用到的模块就是系统自动导入的:
    from django.shortcuts import render
    在这里插入图片描述
    home.html 内容:
    在这里插入图片描述
    启动服务python manage.py runserver
    在这里插入图片描述

指定html、css、js等路径问题


hmtl
在导入html文件之前,先要做的是让系统知道导入文件的来源。
先创建一个存放html文件的文件夹(temphtml),与app01同级即可。
在这里插入图片描述
在settings.py中的 TEMPLATES 中找到DIRS,将存放html文件的文件夹的路径放进去.
这里的BASE_DIR 是项目的基础路径,我这里就是它就是D:\work-place\dj
在这里插入图片描述


css/js/img
创建文件夹static
在这里插入图片描述
在settings.py中找到 STATICFILES_DIRS,写入文件夹路径
在这里插入图片描述
这里的STATIC_URL的作用是,可以通过url请求到静态资源
要保证URL和DIRS中的名称保持一致


向html中引入静态文件
urls.py 文件中添加静态文件url的处理,确保Django能正确处理静态文件

from django.conf.urls.static import static
from django.conf import settings

static(settings.STATIC_URL,document_root= settings.STATIC_ROOT)

在需要引入的html文件的<head>中,添加<link>引入所需静态文件即可

<head>
    <meta charset="UTF-8">
    <link rel="stylesheet" type="text/css" href="/static_file/css/login.css">
</head>

获得网页写入的表单信息

编写html:
{% csrf_token %}, 跨站请求伪造

<!DOCTYPE html>
<html lang="en">
<head>
    <meta charset="UTF-8">
    <title>测试网页</title>
</head>
<body>
<h1>信息</h1>
<form action="/index/" method="post">
    {% csrf_token %} <!--必须在form表单内部-->
    省市:<input type="text" name="prov"/><br/>
    地区:<input type="text" name="addr"/><br/>
    <input type="submit" value="提交"/>
</form>

</body>
</html>

修改views.py文件

addr_l = [] 
def index(request):
    if request.method == 'POST':
        prov = request.POST.get('prov')
        addr = request.POST.get('addr')
        print(prov, addr)
        temp = {'prov': prov, 'ml': addr}
        addr_l.append(temp)
    # return HttpResponse('hello world')
    return render(request, 'demo01.html', {'data': addr_l})

启动服务,后再表单中输入信息点击提交,得到:
在这里插入图片描述

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

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

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

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

余额充值