2011-02-18 14 views
0

我意識到我在這裏做了一些基本的錯誤,只是不確定它是什麼。我沒有收到任何錯誤,但是當我加載頁面時沒有顯示任何模型數據。將其他Django Apps模型導入視圖 - 應該是基本的

這裏就是我想要做的事: 應用:基地,博客,恢復

我想從博客的模型和恢復在基地的視圖展現出來。博客和簡歷應用程序都能正常工作。

基地/ views.py

from django.core.urlresolvers import reverse 
from django.shortcuts import render_to_response 
from testpro.blog.models import Post 
from testpro.resume.models import Project 

def main(request): 
    """Main listing.""" 
    posts = Post.objects.all().order_by("-created") 
    projects = Project.objects.all().order_by("-created") 
    return render_to_response("list.html", dict(posts=posts, projects=projects, user=request.user)) 

list.html模板

{% extends "bbase.html" %} 

{% block content %} 
    <div class="main"> 
     <h3>Blog Posts</h3> 
     <!-- Posts --> 
     <ul> 
      {% for post in posts.object_list %} 
       <div class="title">{{ post.title }}</div> 
       <ul> 
        <div class="time">{{ post.created }}</div> 
        <div class="body">{{ post.body|linebreaks }}</div> 
       </ul> 
      {% endfor %} 
     </ul> 

     <!-- Projects --> 
     <h3>Projects</h3>  
     <ul> 
      {% for project in projects.object_list %} 
       <div class="title">{{ project.title }}</div> 
       <ul> 
        <div class="industry">{{ project.industry }}</div> 
        <div class="time">{{ project.created }}</div> 
        <div class="body">{{ project.body|linebreaks }}</div> 
       </ul> 
      {% endfor %} 
     </ul> 

    </div> 

{% endblock %} 

最後,urls.py

from django.conf.urls.defaults import * 

# Uncomment the next two lines to enable the admin: 
from django.contrib import admin 
admin.autodiscover() 

urlpatterns = patterns('', 
    (r'^main/', 'base.views.main'), 
    (r'^admin/', include(admin.site.urls)), 
) 

我在做什麼愚蠢的錯誤?模板呈現,它只是不包含任何模型數據。

編輯:新增bbase.html模板

<?xml version="1.0" encoding="UTF-8"?> 
<!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> <title>{% block title %}Test Project{% endblock %}</title> </head> 

<body> 
    <div id="sidebar"> {% block sidebar %} {% endblock %} </div> 
    <div id="container"> 
     <div id="menu"> 
      {% block nav-global %} 

       <!-- MENU --> 
       <h3>MyBlog</h3> 
       {% if user.is_staff %} 
       <a href="{% url admin:index %}">Admin</a> 
       <a href="{% url admin:blog_post_add %}">Add post</a> 
       {% endif %} 

      {% endblock %} 
     </div> 

     <div id="content"> 
      {% block content %}{% endblock %} 
     </div> 
    </div> 

</body> 
</html> 
+0

你在殼上測試過嗎?真的幫我找到那些煩人的小bug ... python manage.py shell,然後嘗試導入模型:從testpro.resume.models導入項目並調用:projects = Project.objects.all()。order_by(「 - created」 )看看它是否返回任何東西... – Piva 2011-02-18 02:01:48

+0

我有,它確實在殼中返回數據... – mwan 2011-02-18 02:04:38

回答

1
{% for project in projects.object_list %} 
# should be 
{% for project in projects %} 

{% for post in posts.object_list %} 
# should be 
{% for post in posts %} 

QuerySet都不具備的一個object_list屬性我知道,這樣的模板引擎是悄無聲息失敗了。