Django入门1

Django入门学习1

搭建web站点及业务框架

1 安装Django

方法:

1 终端输入命令: pip install django

2在python解释器中添加,步骤如下

image-20230718154142662

如果遇到速度比较慢的状况,可以加入国内阿里云镜像站点来安装:

pip install -i https://mirrors.aliyun.com/pypi/simple django

image-20230718154655643

2 创建了一个名为myblog的站点名
在总项目终端输入命令:django-admin startproject myblog

image-20230718155622510

各文件的功能如下

image-20230718160026656

3 创建业务模块

描述

image-20230718160536832

打开book,查看目录下文件

image-20230718160911493

image-20230718161049987

4 测试web服务

image-20230718161356322

运行结果

image-20230718161414091

可以看到提示了测试web访问方式为:http://127.0.0.1:8000,此时可以在浏览器地址里输入该地址,出现火箭图标就表明请求成功:

打开网址----->

image-20230718161501281

5 设定访问路由

先进入业务模块book,由于book目录里并无urls.py文件,需要先创建一个。然后在里面输入如下内容:

from django.urls import path   #导入路径相关配置
from . import  views  #导入视图views

urlpatterns = [
    path('', views.index,name="index"),  #默认访问book业务的首页
]

下面我们在views视图文件里添加一下该函数名称:

from django.http import HttpResponse

def index(request):
    msg="welcome to visit Dr.Cao's blog,2020!"
    return HttpResponse(msg)

最后一步还需要回到核心子模块里的全局路由设定urls.py文件里,将业务模块添加进去:

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

urlpatterns = [
    path('admin/', admin.site.urls),
    path('book',include('book.urls'))    #使用include函数,book.urls为业务模块里的urls包
]

上述代码中使用了include函数,在include函数里添加业务模块urls文件所在路径即可。如book.urls这是对象的使用方法,book为业务模块包,urls为该包里的对象,这是实际存在的。

经过这三步操作后,下面我们在浏览器地址上输入:http://127.0.0.1:8000/book,就可以看到页面上有显示设定的那句话

image-20230718162203895

在book业务模块里再添加一层路径,即book业务的子页面,例如 http://127.0.0.1:8000/book/sell,如果想访问sell子页面,就需要在book模块的urls中设定就可以了:

from django.urls import path
from . import  views

urlpatterns = [
    path('', views.index,name="index"),
    path('/sell', views.sell,name="sell")  #添加一个sell子页面路径,访问views里的sell函数
]

我们看到路径为views里的sell函数,此时我们回到book目录的views.py文件,添加一个sell函数内容如下:

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

def index(request):
    msg="welcome to visit Dr.Cao's blog,2020!"
    return HttpResponse(msg)

def sell(request):  #增加的sell函数
    msg="你在访问曹鉴华的售书页面"
    return HttpResponse(msg)  #返回字符串变量响应

保存后再到浏览器地址栏里访问,地址为:http://127.0.0.1:8000/book/sell,回车后浏览器显示如下:image-20230718165218205

6 访问HTML页面

有了路由设定基础后,对于访问HTML页面的请求,也是放在views视图里来处理的。此时回到全局设定setting.py文件里,可以看到有一个参数为TEMPLATES模板,里面的DIRS参数就是模板所在的路径。

TEMPLATES = [
    {
        'BACKEND': 'django.template.backends.django.DjangoTemplates',
        'DIRS': [],   #视图文件存放位置的设定

如果我们设定在myblog站点目录新建一个templates子目录,用于存放网页文件,这里的DIRS参数就可以设定为:

'DIRS': [BASE_DIR+"templates",],   #其中的BASE_DIR为项目根目录路径

修改后保存下来。接下来就可以新建这个templates目录,并在里面创建一个网页文件index.html,内容可以示例如下:

image-20230718235422364

接下来回到book目录的views视图文件,修改其渲染方式为render:

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

def index(request):
    msg="welcome to visit Dr.Cao's blog,2020!"
    return HttpResponse(msg)

def sell(request):
    msg={}   #定义了一个字典
    msg['data']="你在访问曹鉴华的售书页面"    #设置了键名为data,值为后面的语句
    return render(request,'index.html',msg)  #使用render渲染方式

image-20230718235121716

进行完上述步骤,保存并打开网址:http://127.0.0.1:8000/book/sell,弹出如下界面:

image-20230718233526444

下面我们将index.html网页内容修改为:

image-20230718235515110

保存并打开网址:http://127.0.0.1:8000/book/sell,即弹出如下界面:

image-20230718233709832

posted @ 2023-07-18 23:58  凯璇  阅读(18)  评论(0)    收藏  举报