Django: ImportError: cannot import name Zählen

Ich zog aus meinem github und versuchte meine setup-Anwendung auf meinem Ubuntu (die ich ursprünglich lief meine app auf einem Mac zu Hause).

Ich neu erstellt die Datenbank und konfiguriert die settings.py -- update auch die Vorlage Standorte, etc.

Jedoch wenn ich den server "python manage.py runserver" Holen Sie sich einen Fehler, der sagt:

ImportError: cannot import name Count

Ich importiert der Graf, in meinen views.py die Verwendung der annotate():

from django.shortcuts import render_to_response
from django.http import Http404, HttpResponse, HttpResponseRedirect
from django.db.models import Count
from mysite.blog.models import Blog
from mysite.blog.models import Comment
from mysite.blog.forms import CommentForm

def index(request):
    #below, I used annotate()
    blog_posts = Blog.objects.all().annotate(Count('comment')).order_by('-pub_date')[:5]

    return render_to_response('blog/index.html', 
                             {'blog_posts': blog_posts})

Warum nicht funktioniert?

Auch, wenn ich entfernen Sie die "import-Count" - Zeile, der Fehler geht Weg und meine app funktioniert wie normal.

Dank,
Wenbert

UPDATE:

meine models.py sieht wie folgt aus:

from django.db import models

class Blog(models.Model):
    author = models.CharField(max_length=200)
    title = models.CharField(max_length=200)
    content = models.TextField()
    pub_date = models.DateTimeField('date published')

    def __unicode__(self):
            return self.content

    def was_published_today(self):
            return self.pub_date.date() == datetime.date.today()

class Comment(models.Model):
    blog = models.ForeignKey(Blog)
    author = models.CharField(max_length=200)
    comment = models.TextField()
    url = models.URLField()
    pub_date = models.DateTimeField('date published')

    def __unicode__(self):
            return self.comment

UPDATE 2

Meine urls.py sieht wie folgt aus:

from django.conf.urls.defaults import *

from django.contrib import admin
admin.autodiscover()

urlpatterns = patterns('',
    (r'^admin/(.*)', admin.site.root),
    (r'^blog/$','mysite.blog.views.index'),
    (r'^display_meta/$','mysite.blog.views.display_meta'),
    (r'^blog/post/(?P<blog_id>\d+)/$','mysite.blog.views.post'),
)
Was macht Ihr models.py Aussehen? Sie haben eine Methode/Klasse Zählen?
Sie sind auf jeden Fall mit der gleichen version von Django, ja?
Ich habe meinen Beitrag aktualisiert.
Welche version von Django benutzen Sie? Sind Sie sicher, es IST die neueste?

InformationsquelleAutor wenbert | 2009-09-24

Schreibe einen Kommentar