Python django:模板如何查询两个数据表

Python django:模板如何查询两个数据表,python,mysql,django,Python,Mysql,Django,使用django:我有2个相同的数据库表需要同意页面显示,不知道如何运行它 django views.py: from django.shortcuts import render from book.models import article, update from django.http import HttpResponse from django.template import RequestContext, loader from django.shortcuts import re

使用django:我有2个相同的数据库表需要同意页面显示,不知道如何运行它

django views.py:

from django.shortcuts import render
from book.models import article, update
from django.http import HttpResponse
from django.template import RequestContext, loader
from django.shortcuts import render_to_response


# Create your views here.
def home(request):
    return HttpResponse("Hello world!")

def article_list(request, id):
    articles = article.objects.get(id = id)
    return render_to_response('article.html', {'article':articles})

def title_list(request, id):
    updates = update.objects.filter(bookid = id)
    return render_to_response('article.html', {'update':'updates'})
以及URL.py:

from django.conf.urls import patterns, include, url
from book import views
#, article, update
from django.contrib import admin
admin.autodiscover()
from django.conf import settings

urlpatterns = patterns('',
    url(r'^templates/(?P<path>.*)$', 
        'django.views.static.serve',
        {'document_root': '/home/hugo/sobook/book/templates'}),
    url(r'^$', views.home, name='home'),
    # url(r'^blog/', include('blog.urls')),
    url(r'^b/(\d{1,9})/$', views.article_list, name='article_list'),
    url(r'^b/(\d{1,9})/$', views.title_list, name='title_list'),
    url(r'^admin/', include(admin.site.urls)),
    )
和模板:article.html:

<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<html xmlns="http://www.w3.org/1999/xhtml" xml:lang="en" lang="en">
  <head>
    <meta http-equiv="Content-type" content="text/html; charset=utf-8" />
       <link href="/templates/screen.css" rel="stylesheet" type="text/css" media="screen" />
    <title>{{article.name}}</title>
  </head>
  <body>
<h1>{{article.name}}</h1>
<ul><li><img src='{{article.img_url}}' width="100px"/></li>
<li>作者:{{article.author}} </li>
<li>简介: {{article.intro}}</li>
<li>入库时间:{{article.time|date:"F j, Y" }}</li>
<li>小说状态:{{article.state}}</li>
<li><a href="{{article.page_url}}" title="{{article.name}}">{{article.page_title}}</a></li>
</ul>
<div class="list">
<table border="1">
<tr>
  <th>最新章节</th>
  <th>来源</th>
  <th>更新时间:{{ title_list.page_title }}</th>
</tr>
{% for person in title_list %}
<tr>
  <td><a href="{{ person.page_url }}">{{ person.page_title }}</a></td>
  <td>{{ person.sitename }}</td>
  <td>{{ person.time }}</td>
</tr>
{% endfor %}
</table>
</div>
</body>
</html>
访问时:

localhost/b/12/

views.py title\u列表


未显示查询?其他一切正常。

视图中有一个错误

from django.shortcuts import render
from book.models import article, update
from django.http import HttpResponse
from django.template import RequestContext, loader
from django.shortcuts import render_to_response


# Create your views here.
def home(request):
    return HttpResponse("Hello world!")

def article_list(request, id):
    articles = article.objects.get(id = id)
    return render_to_response('article.html', {'article':articles})

def title_list(request, id):
    updates = update.objects.filter(bookid = id)
    # You are passing the string 'updates' along instead of the queryset
    #return render_to_response('article.html', {'update':'updates'})
    return render_to_response('article.html', {'update':updates})
此外,您的视图还需要一个名为title_list的变量,但是没有提供该变量,可能您的意思是更新

在模板中,您将title_列表作为更新实例和查询集引用。 您有{title_list.page_title}和{%for person in title_list%}这不太可能是您创建的实际对象,很可能是一个错误

在URL中,您还为同一路径放弃了两个视图。这根本不可能。每个URL都必须指向一个视图。不能将多个视图分配给同一URL

url(r'^b/(\d{1,9})/$', views.article_list, name='article_list'),
url(r'^b/(\d{1,9})/$', views.title_list, name='title_list'),

URL不能指向两个视图。这毫无意义。我需要为这两个视图分配相同的URL,你能举个例子吗。我只是练了一下django有些地方不熟悉,想纠正我,谢谢!请详细说明您希望视图实现的功能?文章和更新之间的链接是什么。他们为什么要共享同一个URL?你就不能合并成一个视图吗?就像这样,我有一本小说,这本小说有很多章节。这本小说,我所有方面的信息,如:作者,更新时间和小说介绍创建一个表:文章,每章一本小说创建一个表:updatec可以更改为其他名称,我希望在一个视图中显示信息并更新小说的章节
url(r'^b/(\d{1,9})/$', views.article_list, name='article_list'),
url(r'^b/(\d{1,9})/$', views.title_list, name='title_list'),