django单元测试使用正确数据库(django框架的特点)

来源:国外服务器 在您之前已被浏览:1 次
导读:目前正在解读《django单元测试使用正确数据库(django框架的特点)》的相关信息,《django单元测试使用正确数据库(django框架的特点)》是由用户自行发布的知识型内容!下面请观看由(国外主机 - www.2bp.net)用户发布《django单元测试使用正确数据库(django框架的特点)》的详细说明。
笨笨网美国主机,w ww.2 b p .n e t

本章将构建、测试和部署一个带有主页和关于页面的Pages应用。我们将学习Django的基于类的视图和模板,这些都是本书后面构建的更复杂的Web应用的基础。

创建应用

$ mkdir pages && cd pages$ django-admin startproject config .$ python manage.py startapp pages$ vi config/settings.py# config/settings.pyINSTALLED_APPS = [ 'django.contrib.admin', 'django.contrib.auth', 'django.contrib.contenttypes', 'django.contrib.sessions', 'django.contrib.messages', 'django.contrib.staticfiles', 'pages', # new]

模板

每个网络框架都需要方便的方法来生成HTML文件,在Django中使用模板:可以连接在一起的独立HTML文件,也包括基本的逻辑。

首先要考虑的是在Django项目的结构中把模板放在哪里。有两个选择。默认情况下,Django的模板加载器会在每个应用中寻找相关模板。然而,这个结构有些混乱:每个应用都需要一个新的模板目录。

└── pages ├── templates ├── pages ├── home.html

这意味着我们需要创建一个新的模板目录,一个新的应用目录,页面,以及最后我们的模板本身,即home.html。

另一种方法,那就是创建项目级模板目录,并将所有模板放在其中。通过对config/settings.py文件做一个小小的调整,我们可以告诉Django也在这个目录下寻找模板。这就是我们要使用的方法。

$ mkdir templates$ vi templates/home.html<!-- templates/home.html --><h1>Homepage</h1>$ vi templates/about.html<!-- templates/about.html --><h1>About page</h1>$ vi config/settings.py# config/settings.pyTEMPLATES = [ { ... 'DIRS': [str(BASE_DIR.joinpath('templates'))], # new ... },]

基于类的视图

我们将使用内置的TemplateView来显示我们的模板。更新pages/views.py文件。

# pages/views.pyfrom django.views.generic import TemplateViewclass HomePageView(TemplateView): template_name = 'home.html'class AboutPageView(TemplateView): # new template_name = 'about.html'

URLs

config/urls.py

# config/urls.pyfrom django.contrib import adminfrom django.urls import path, include # newurlpatterns = [ path('admin/', admin.site.urls), path('', include('pages.urls')), # new]

pages/urls.py

# pages/urls.pyfrom django.urls import pathfrom .views import HomePageView, AboutPageView # newurlpatterns = [ path('about/', AboutPageView.as_view(), name='about'), # new path('', HomePageView.as_view(), name='home'), ]

当使用基于类的视图时,你总是在视图名称的后面加上as_view()。

django单元测试使用正确数据库(django框架的特点)

扩展模板

$ touch templates/base.html$ vi templates/base.html <!-- templates/base.html --><header> <a href="{% url 'home' %}">Home</a> | <a href="{% url 'about' %}">About</a></header>{% block content %}{% endblock content %}$vi templates/home.html<!-- templates/home.html -->{% extends 'base.html' %}{% block content %}<h1>Homepage</h1>{% endblock content %}$vi templates/about.html <!-- templates/about.html -->{% extends 'base.html' %}{% block content %}<h1>About page</h1>{% endblock content %}django单元测试使用正确数据库(django框架的特点)

测试

django单元测试使用正确数据库(django框架的特点)# pages/tests.pyfrom django.test import SimpleTestCaseclass SimpleTests(SimpleTestCase): def test_home_page_status_code(self): response = self.client.get('/') self.assertEqual(response.status_code, 200) def test_about_page_status_code(self): response = self.client.get('/about/') self.assertEqual(response.status_code, 200)

我们在这里使用 SimpleTestCase 因为我们没有使用数据库。如果我们使用数据库,我们会使用 TestCase。然后我们检查每个页面的状态码是否为 200,这是成功 HTTP 请求的标准响应。

执行:

$ python manage.py testSystem check identified no issues (0 silenced)...----------------------------------------------------------------------Ran 2 tests in 0.060sOKdjango单元测试使用正确数据库(django框架的特点)
笨笨网美国主机,w ww.2 b p .n e t
提醒:《django单元测试使用正确数据库(django框架的特点)》最后刷新时间 2025-03-21 11:17:45,本站为公益型个人网站,仅供个人学习和记录信息,不进行任何商业性质的盈利。如果内容、图片资源失效或内容涉及侵权,请反馈至,我们会及时处理。本站只保证内容的可读性,无法保证真实性,《django单元测试使用正确数据库(django框架的特点)》该内容的真实性请自行鉴别。