Django入门指南-第6章:第一个视图函数

目前我们已经有一个视图函数叫home,这个视图在我们的应用程序主页上显示为“Hello,World!”

myproject/urls.py

  1. from django.conf.urls import url
  2. from django.contrib import admin
  3. from boards import views
  4. urlpatterns = [
  5. url(r'^$', views.home, name='home'),
  6. url(r'^admin/', admin.site.urls),
  7. ]

boards/views.py

  1. from django.http import HttpResponse
  2. def home(request):
  3. return HttpResponse('Hello, World!')

我们可以从这里开始写。如果你回想起我们的原型图,图5显示了主页应该是什么样子。我们想要做的是在表格中列出一些版块的名单以及它们的描述信息。

2-2-3.png

首先要做的是导入Board模型并列出所有的版块

boards/views.py

  1. from django.http import HttpResponse
  2. from .models import Board
  3. def home(request):
  4. boards = Board.objects.all()
  5. boards_names = list()
  6. for board in boards:
  7. boards_names.append(board.name)
  8. response_html = '<br>'.join(boards_names)
  9. return HttpResponse(response_html)

结果就是这个简单的HTML页面:

boards

等等,我们在这里先停一下。真正的项目里面我们不会这样去渲染HTML。对于这个简单视图函数,我们做的就是列出所有版块,然后渲染部分是Django模板引擎的职责。