【备忘录】使用Django创建应用程序,并使用HTML来显示“Good Bye”,适用于Django初学者的文章
首先
这篇文章是针对Django学习初学者的。最近我开始使用Python的框架Django,并将其使用方法作为备忘录保存在了Qiita上面。我也希望通过输出的方式来表达我的意思。这篇文章是关于Django初学者的第三篇文章,如果之前没有看过其他的文章,请从下面开始阅读。
【备忘录】使用Django输出”你好,世界”~适合Django初学者的文章①~
【备忘录】使用Django输出”Hello World”~适合Django初学者的文章②~
本文的目标和注意事项
在这篇文章中,我们将在Mac上使用Django创建一个新项目后,创建一个应用程序,并使用HTML在屏幕上显示“Good Bye”。
同时,正如我之前提到的,由于我个人作为一名工程师的知识浅薄,对于某些词汇的定义和解释可能不充分。如果有不足之处,请指正。谢谢!
请尝试在实施时复习本次文章的基本概念,因为它与第二篇文章有一些相似之处。
在创建Django项目之前,请参考其他网站上的初始设置。基本上只有以下两个命令。
安装 Python3 使用 brew
安装 Django 使用 pip3
省略 brew 和 pip 命令的安装说明。
执行环境
我的运行环境是
MacBook Pro(Retina,13英寸,2015年初款)
Sublime文本
终端
Python 3.6
Django 2, 2, 1
如果有关执行环境的说明不足之处,请告诉我!
早速来试试吧。
创建文件夹
首先要做的是创建文件夹。在合适的地方创建一个文件夹。
mkdir 再见
我创建了一个名为”再见”的文件夹。
我将会进入这个文件夹。
cd 再见
创建项目
我们终于来创建Django项目吧。请尝试输入以下命令:
django-admin startproject goodbyeProject .
打开项目文件夹后,我认为你会看到”hello”和”manage.py”的显示。另外,如果在”goodbyeProject”文件夹里有各种文件(例如models.py等),那么项目创建成功。
创建应用程序
现在让我们来创建应用程序。以下是创建应用程序的命令。让我们在终端中执行一下。
使用Python3运行命令“ manage.py startapp byeapp”
我已经创建了一个名为byeapp的应用程序。当创建时,请在manage.py文件的同一级目录中运行命令。
创建应用程序后,在byeapp文件夹中不存在名为urls.py的文件,让我们创建它吧。
调整setting.py(应用程序的描述)
如果您已经添加了应用程序,请根据以下指示修改setting.py文件中的应用程序描述信息。
INSTALLED_APPS = [
'django.contrib.admin',
'django.contrib.auth',
'django.contrib.contenttypes',
'django.contrib.sessions',
'django.contrib.messages',
'django.contrib.staticfiles',
'byeapp', #追記
]
操作HTML文件
请在与”manage.py”相同的目录下创建一个名为”templates”的文件夹。
让我们在templates文件夹中创建一个名为「index.html」的文件。
请在创建的index.html文件中填写以下内容。
<p>Good Bye</p>
修改setting.py
请在这里更改setting.py文件。请修正以下部分。
TEMPLATES = [
{
'BACKEND': 'django.template.backends.django.DjangoTemplates',
'DIRS': [BASE_DIR,'templates'], #追記
'APP_DIRS': True,
'OPTIONS': {
'context_processors': [
'django.template.context_processors.debug',
'django.template.context_processors.request',
'django.contrib.auth.context_processors.auth',
'django.contrib.messages.context_processors.messages',
],
},
在添加的部分中,指定了最初创建的templates文件夹的位置。
修改views.py
请在byeapp的views.py文件中写入以下内容。
from django.views.generic import TemplateView
class SayHello(TemplateView):
template_name = "index.html"
这个部分描述了TemplateView类的角色是什么(在这种情况下是显示HTML)。
修改urls.py文件
首先,我们将调整goodbyeProject的urls.py。
goodbyeProject的urls.py默认情况下写成如下所示。
from django.contrib import admin
from django.urls import path
urlpatterns = [
path('admin/', admin.site.urls),
请将其添加在下面的位置。
from django.contrib import admin
from django.urls import path ,include #追記
urlpatterns = [
path('admin/', admin.site.urls),
path('',include('goodbyeProject.urls')) #追記
]
include功能用于连接项目和已创建的应用程序。
接下来需要修改已创建的应用程序的urls.py文件。这是关于byeapp的urls.py文件。请按照以下方式进行描述。
from django.urls import path
from .views import SayGoodbye
urlpatterns = [
path('goodbye/',SayGoodbye.as_view())
]
SayGoodbye是在views.py中创建的类名。
.as_view()部分是用于添加到基于模板的类的地方。
实施到此为止!让我们去确认一下!
尝试启动服务器
您可以使用以下命令来启动Django服务器。
请运行命令 “python manage.py runserver”。
在使用启动服务器命令时,请注意在manage.py文件所在的目录层级下进行操作(否则会出现manage.py文件不存在等错误)
Watching for file changes with StatReloader
Performing system checks...
System check identified no issues (0 silenced).
You have 17 unapplied migration(s). Your project may not work properly until you apply the migrations for app(s): admin, auth, contenttypes, sessions.
Run 'python manage.py migrate' to apply them.
June 08, 2019 - 15:06:39
Django version 2.2.1, using settings 'helloworld.settings'
Starting development server at http://127.0.0.1:8000/
Quit the server with CONTROL-C.
当你启动服务器并看到上述信息时,表示成功了。
请尝试打开以下URL:http://127.0.0.1:8000/goodbye/ (8000的部分根据个人环境可能会有所不同)”goodbye”部分是根据urls.py设定的。
有没有显示?
如果没有显示的话,我认为控制台会有错误信息,您可以参考该信息进行修正。
辛苦了!
結束
作为一名刚刚入行的工程师,如果出现错误,请随时给我留下评论,我会非常高兴。这样对我的个人学习非常有帮助!
下一次我将写一篇关于创建用户并登录admin的方法的文章。
非常感谢您。