现在我们新建一个"pages"app,用于展示一个简单的主页。通过输入`Control + c`停止本地服务器,然后使用`startapp`命令添加"pages"。
**Command Line**
*****
```
(hello) $ python manage.py startapp pages
```
Django会自动为我们创建"pages"目录和几个文件。但是我们的hello_project不会识别它,直到我们将刚创建的app添加到hello_project/setings.py文件中的INSTALLED_APPS配置中。
Django从上到下加载app,所以一般来说,最好在他们可能依赖的内置应用程序(如admin、auth)下面添加新应用程序。
值得注意的是,我们虽然可以简单地输入应用程序的名称来加载app,但最好键入完整的名称"pages.apps.PagesConfig",这样会更加地灵活。
**Code**
*****
```
# hello_project/settings.py
INSTALLED_APPS = [
'django.contrib.admin',
'django.contrib.auth',
'django.contrib.contenttypes',
'django.contrib.sessions',
'django.contrib.messages',
'django.contrib.staticfiles',
'pages.apps.PagesConfig', # new
]
```
我们希望使用空字符串''在主页上显示内容, 现在我们可以用`include`导入"pages"应用程序的URL路由配置。
**Code**
*****
```
# hello_project/urls.py
from django.contrib import admin
from django.urls import path, include # new
urlpatterns = [
path('admin/', admin.site.urls),
path('', include('pages.urls')), # new
]
```
代替使用template文件,我们仅需要在view层返回一条消息"Hello, World!"
**Code**
*******
```
# pages/views.py
from django.http import HttpResponse
def home_page_view(request):
return HttpResponse('Hello, World!')
```
最后一步,在"pages"应用程序中创建一个urls.py文件,并将其链接到home_page_view。如果你在Mac或Linux计算机上,可以使用`touch`命令创建新文件。 在Windows上使用文本编辑器创建新文件。
**Command Line**
*****
```
(hello) $ touch pages/urls.py
```
编辑urls.py文件,在顶部导入path和home_page_view函数,然后将其路由设置为''空字符串。值得注意的是,我们还为这条路由设置了一个名称"home"。
**Code**
```
# pages/urls.py
from django.urls import path
from .views import home_page_view
urlpatterns = [
path('', home_page_view, name='home')
]
```
访问主面的全流程如下:当用户访问主页时,它们将首先被路由到hello_project/urls.py;然后路由到pages/urls.py,最后指向返回字符串"Hello,World!"的home_page_view。
我们已经完成一个基础主页的开发,再次重启本地web服务。
**Command Line**
*****
```
(hello) $ python manage.py runserver
```
在你的浏览器刷新http://127.0.0.1:8000/,它将输出"Hello,World!"

现在我们将要使用Docker配置环境,请使用`Control + c`停止本地web服务,输入"exit"退出虚拟环境。
**Command Line**
*****
```
(hello) $ exit
$
```
怎么判断是否已经退出虚拟环境? 命令行提示符上的目录名称周围不再有括号,此时尝试运行的任何Django命令都将失败。例如,尝试执行python manage.py runserver看看发生了什么。
**Command Line**
*****
```
$ python manage.py runserver
File "./manage.py", line 14
) from exc
^
SyntaxError: invalid syntax
```
这意味着我们退出了虚拟环境,为Docker做好了准备。
- python setup.py install报错
- from future import absolute_import 的使用
- celery 4以上的版本不支持windows解决办法
- 'ascii' codec can't decode byte 0xe4 in position 0: ordinal not in range(128)
- Python开发环境CentOS
- dosh-to-dock启动报错
- 创建了__init__.py文件,找不到模块
- CentOS切换中文输入法
- vncserver:1非正常中断后启动不来
- CentOS7安装搜狗输入法
- 安装第三方包常见报错
- Django for Professionals
- Chapter 1:Docker
- What is Docker?
- Containers vs. Virtual Environments
- Install Docker
- Docker Hello, World
- Django Hello, World
- Pages App
- Images, Containers, and the Docker Host
- Git
- Conclusion
- 设置pip/pyenv国内加速源
- 使用stackedit在github编辑文档
- python2.x与python3.x的区别
- python多任务实现
- python执行Linux命令的方法