python Django 创建应用过程图示详解

yipeiwu_com6年前Python基础

如图输入如下命令

python manage.py startapp apitest

添加应用到 autotest项目项目下

在settings.pyo 中加入“apitest”,如下图

创建视图

在apitest/views中添加test 函数

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

# Create your views here.

def test(request):
  return HttpResponse('hello test')

创建映射

现在把视图中的函数映射到浏览器前端页面,在autotest/urls.py 中加入如下内容:

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

from apitest import views  # 导入 views ,注意项目路径,打开时要 从autotest目录打开。

urlpatterns = [
  path('admin/', admin.site.urls),
  path('test/',views.test),   # 添加 路径及函数
]

启动服务:

python manage.py runserver

若此时访问 http://127.0.0.1:8000/

会提示如下错误

根据提示可以到指定setting 文件下修改配置

修改后又提示如图错误,提示为:应该 设置 ALLOWED_HOSTS = [] 因为我们的服务地址是 127.0.0.1 。所以设置为该值,如果输入其他值,访问127.0.0.1,则无法访问。如下图。

再次执行即不再报错。

再次访问时提示

此时可以加上访问路径,如下操作。

浏览器访问:http://127.0.0.1:8000/test/

创建模版

1、在apitest 下创建templates 文件夹,在该文件夹下创建login.html文件

并添加如下内容:

<!DOCTYPE html>
<html lang="en">
<head>
  <meta http-equiv="Content-Type" content="test/html; charset=UTF-8">
  <title>Login</title>
</head>
<body>
<h1>login</h1>
<form method="post" action="login/">
  {% csrf_token %}
  <br> <input name="username" type="text" placeholder="username">
  <br> <input name="password" type="password" placeholder="password">
  {{ error }} <br>
  <br> <button id="submit" type="submit">submit</button>
  
  
  
</form>
</body>
</html>

2、在autotest/urls.py 中创建映射

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

from apitest import views  # 导入 views ,注意项目路径,打开时要 从autotest目录打开。

urlpatterns = [
  path('admin/', admin.site.urls),
  path('test/',views.test),   # 添加 路径及映射函数
  path('login/',views.login),  # 这里添加这个路径,当访问login/ 时 会映射到views里的login函数
]

3、在apitest/views.py 中创建login函数

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

# Create your views here.

def test(request):
  return HttpResponse('hello test')

def login(request):
  return render(request,'login.html')  # 这里返回 使用了render 返回指定页面内容。

4、访问登录页:http://127.0.0.1:8000/login/ 页面展示如下:

以上就是本文的全部内容,希望对大家的学习有所帮助,也希望大家多多支持【听图阁-专注于Python设计】。

相关文章

在python中pandas的series合并方法

如下所示: In [3]: import pandas as pd In [4]: a = pd.Series([1,2,3]) In [5]: b = pd.Series(...

python获取当前目录路径和上级路径的实例

在使用python的时候总会遇到路径切换的使用情况,如想从文件夹test下的test.py调用data文件夹下的data.txt文件: . └── folder ├── data...

用Python编写一个简单的FUSE文件系统的教程

如果你是我的长期读者,那么你应该知道我在寻找一个完美备份程序,最后我写了一个基于bup的我自己的加密层。 在写encbup的时候,我对仅仅恢复一个文件就必须要下载整个巨大的档案文件的做法...

Python处理中文标点符号大集合

中文文本中可能出现的标点符号来源比较复杂,通过匹配等手段对他们处理的时候需要格外小心,防止遗漏。以下为在下处理中文标点的时候采用的两种方法: 中文标点集合 比较常见标点有这些: !?...

浅析Python中signal包的使用

在liunx系统中要想每隔一分钟执行一个命令,最普遍的方法就是crontab了,如果不想使用crontab,经同事指点在程序中可以用定时器实现这种功能,于是就开始摸索了,发现需要一些信号...