现在开始进入本书第2章的课程。
2 使用Django初步开发
当我们将Django项目载入到pycharm软件后,我们会发现的开发变得更简单,因为这块软件有很好的代码提示。这个IDE中不仅有良好的项目资源管理文件结构组织,而且还有很多方便的工具和功能,包括terminal终端控制、代码调试等。
2.1配置Django项目的默认显示语言
根据我们上一章中的介绍,我们可以将django框架默认提供的网页跑起来,但是发现使用网页的时候,显示的页面语言都是英文的。其实我们可以通过配置文件来修改它的显示语言。
这是还没有配置语言的界面。
现在我们开始配置页面的显示语言。我们先找到项目下的settings.py文件,找到该文件中的LANGUAGE_CODE = 'en-us'一般该行代码默认在第107行。这里的LANGUAGE_CODE变量就是表示语言配置的变量。在django框架中,一般使用en-us表示英文,zh-hans表示简体中文,zh-hant表示繁体中文。现在我们尝试配置语言为简体中文,配置代码LANGUAGE_CODE = 'zh-hans',刷新一下首页,看效果。
我们再测试使用繁体中文来表示网页的显示语言看看效果。
配置代码为LANGUAGE_CODE = 'zh-hant'刷新页面后的效果如下图。
2.2修改Django Web前台首页内容
我们的django框架处理逻辑中,使用views.py向用户浏览器反馈后台的内容。Django框架通过urls.py来处理用户在浏览器中输入的网址的路径。下面我们尝试来修改一下后台返回给用户的内容为“刘金玉编程”。
第一步:修改views.py文件
修改后的视图处理逻辑页面代码如下:
代码解释1:from django.http.response import HttpResponse这个表示使用django框架的HttpResponse模块来对浏览器用户作出反馈。
代码解释2:def ljyIndex(request):这是一个自定义函数,这里自定义了ljyIndex为名称的处理函数,注意django框架在处理时候默认传入request参数,这个参数可以用来接收前台用户传递而来的参数信息。
代码解释3:return HttpResponse("<h1>刘金玉编程</h1>")表示的是向浏览器返回的信息,return表示函数ljyIndex的返回信息,HttpResponse表示的是一个类,这个类的初始化字符串就是返回给浏览器用户的内容。
第二步:修改urls.py文件
修改后的urls.py文件内容如下:
图中绿色部分表示代码注释。
在这个文件里需要自己添加views文件的导入信息以及路由信息。
代码解释1:from ljyapp import views导入应用中的views模块信息。
代码解释2:path('',views.ljyIndex),是在urlpatterns这个列表中添加的,这里使用了path函数,这个函数的第一个参数是浏览器的相对路由逻辑字符串,第二个参数是views模块文件中的某个函数,这里使用了刚刚定义的ljyIndex这个函数。整行代码就表示:当用户在浏览器只输入了服务器的网址但没有输入下级路径的时候(即访问默认主页时),就会返回views.ljyIndex函数的response的内容。
在写完以上代码后,我们刷新浏览器首页,会看到如下效果。
2.3 初步开发后的项目结构简要分析
通过以上步骤,我们已经自己能够实现对Django项目的简单修改,我们可以自己定义一个路由来控制网页的访问逻辑。通过以上初步开发,如果你已经掌握了Python基础,那么你已经可以制作一个简单的API web服务了。所谓API是指应用程序接口,在这个web页面里,我们可以简单理解为我们使用某一个链接,向这个链接所在的页面程序传入一个或多个值,结果会返回我们需要的内容。API这一部分的专门开发,我们在后文中也会类似用到。
我们先来看看目前项目涉及到的几个文件,下图中,已经做了一个简单地解释。
一般来说,我们做一个项目都是一个文件夹用来保存所有的有关项目的详细,在这里我们使用ljyweb文件夹作为项目文件夹。在一个项目中,我们往往可以创建多个应用程序,本案例创建了一个ljyapp作为应用程序,而在实际运用中,我们可能会运用Django框架开发多个应用程序,每一个应用程序的文件一般也都会有自己的视图、模板、模型,这样子每个应用程序就显得比较独立,容易将项目扩展。
在这里,我们再详细了解一下使得首页显示内容的views.py文件,这个文件在ljyapp这个文件夹中,主要负责向浏览器反馈呈现什么内容。这个文件也可以自己定义,但是主要功能因为是视图,因此自定义的视图文件名称中最好也带有view这个单词,这样看起来可以一目了然。比如自己定义一个用户管理页面的视图,可以自定义userViews.py文件,这个文件中所有的内容都是关于用户管理页面视图的。View视图的这些个Python文件中的内容主要都是一些自定义的函数,用来给路由调用的。View视图的内容如下图所示:
我们再来具体介绍一下urls.py这个文件。这个文件所在位置是在与项目同名的子文件夹中,本案例是ljyweb文件夹,这个Python文件的主要功能是为浏览器提供路由。所谓路由就是指当用户在浏览器输入网址路径时,Django框架会调用这个文件内的规则来调用相应的view视图文件中的函数。Url规则正则表达式主要采用path这个函数去构造,path函数主要用来指定网页的相对路径到指定的逻辑模块,path函数的参数主要是path(相对路径,指定模块)。值得注意的是在使用路由前,我们还需要将需要调用的view视图导入进来。Urls.py文件如下图所示。
本期就带想要用Python进一步实现网站应用的小伙伴走到这里,我们将在下一期介绍自定义Django框架的html网站。