• PythonWeb-Django框架学习-Demo2-创建你的小WEB应用


    上篇完成了Django环境快速搭建,这一篇我们再深入一些。

    1、创建一个APP:

    一个Django项目可以包含好多个App,一个APP就相当于一个子模块、分支系统这样的存在。

    I:在CMD命令窗口,使用CD命令切换到mypysite目录。输入python manage.py startapp app的名字。

     为了看清楚recordinfo的目录结构,我将项目拖到了文本编辑器中。

    II:创建好APP,我们需要设置项目的settings.py来把我们的加入到整个项目的大家庭中。

    # mypysite/settings.py
    
    
    # Application definition
    
    INSTALLED_APPS = [
        'recordinfo',
        'django.contrib.admin',
        'django.contrib.auth',
        'django.contrib.contenttypes',
        'django.contrib.sessions',
        'django.contrib.messages',
        'django.contrib.staticfiles',
    ] 

    2、设置路由(URL)映射

    用户在浏览器中输入的url就是路由,在Django中路由都写在urls.py中,在这个文件中,将url和业务处理函数(也就是视图)映射到一起。

    为了防止以后我们的APP越来越多,我们要在项目一开始就把APP的路由配置和项目的路由配置区分开来。具体操作如下:

    I:给应用recordinfo 添加一个urls.py文件:

    from django.urls import path
    from . import views # . 代表当前目录即recordinfo
    app_name='recordinfo' #给应用添加一个命名空间
    urlpatterns=[
        #path函数是路由系统中很重要的方法
        #参数1:URL、参数2:路由对应的视图函数
        #参数3:传递给视图的字典信息
        #参数4:给URL起个别名
        path('',views.index,name='index'),
    ]

    说明:上面的path('',views.index,name='index')---是说:在app的视图处理文件中有一个index函数来响应URL为127.0.0.1/recordinfo的请求。

    II:在项目主urls.py文件中,加入app独有的urls文件。

    from django.contrib import admin
    from django.urls import path,include
    urlpatterns = [
        path('admin/', admin.site.urls),
        path('recordinfo/',include('recordinfo.urls')),
    ]

    注意:include()相当于多级路由,它会把接收到的url地址,跟前面的path()的第一个参数匹配,把匹配上的部分去掉,把剩下的字符串传递给下app的urls路由文件。由我们目标APP的路由进行判断。

    3、编写视图处理函数

    简单版:返回一串字符信息。在app下面的views.py文件中 添加下面代码:

    from django.shortcuts import render,HttpResponse
    # Create your views here.
    def index(myrequest):
        return HttpResponse('我是首页,欢迎你。')

    运行结果:

    4、使用模板

    我的理解:模板就是一个特殊的HTML文件,它里面包含了一些模板语言:变量、语句等。接收到视图处理函数传递过来的值后,这些值替换掉模板中的变量,最终相应给用户的就是一个纯正的HTML文件。

    I:在app中添加templates文件夹、在templates文件夹中添加myindex.html。

    <!DOCTYPE html>
    <html>
    <head>
        <title>首页</title>
    </head>
    <body>
        <h1>欢迎:{{name}}来到信息登记页</h1>
    </body>
    </html>

    II:修改一下视图文件views.py。

    from django.shortcuts import render
    # Create your views here.
    def index(myrequest):
        # return HttpResponse('我是首页,欢迎你。')
        pamdict={'name':'博哥'}
        return render(myrequest,'recordinfo/myindex.html',pamdict)

    III:启动web服务,在浏览器中输入路径回车。

     说明:render()函数将加载模板、传递参数、返回HttpResponse对象一套操作一气呵成,封装在了一起。

    通过这篇了解了 路由、模板、视图。下篇记录Django如何进行数据库操作。

    此篇完成后项目目录是这个样子:

  • 相关阅读:
    weibo4j中的 jar解释
    Android使用系统Intent实现分享功能及将应用加入分享列表++分享邮箱实现
    Android ListView 技巧 (一) Android ListView Header
    [Android]使用AChartEngine画柱状图 .
    【TCPIP】握手挥手详解
    python : import this. 如此幽默,让人不得不爱
    Forbidden (403) CSRF verification failed. Request aborted.
    Django修改model如何同步数据库
    程序员的7种武器【转】
    Django Admin 录入中文错误解决办法
  • 原文地址:https://www.cnblogs.com/bigbosscyb/p/12486370.html
Copyright © 2020-2023  润新知