2017-01-26 11 views
-3

Ich habe gerade mit Django begonnen, und ich bin dabei https://docs.djangoproject.com/en/1.10/intro/tutorial02/.Fehler in django Umfrage Tutorial

Ich erhalte Fehler in der Shell, wenn ich Question.objects.all() in der Shell ausführen. Ich habe dir (Frage) auch gelaufen und es sagte, es existiere nicht, aber ich weiß es. Remigrierte die Tabellen/Datenbank, da ich models.py mehrmals bearbeitet habe und keine Änderungen aufgenommen habe. Ich habe auch die Unicode-Methode hinzugefügt, aber das hat es nicht gelöst. Vielen Dank im Voraus für Ihre Hilfe. Hier ist meine models.py

from __future__ import unicode_literals 

from django.db import models 

# Create your models here 

class Question(models.Model): 
    question_text = models.CharField(max_length=200) 
    pub_date = models.DateTimeField('date published') 
    def __unicode__(self): 
     return self.Question 

class Choice(models.Model): 
    question = models.ForeignKey(Question, on_delete=models.CASCADE) 
    choice_text = models.CharField(max_length=200) 
    votes = models.IntegerField(default=8) 
    def __unicode__(self): 
     return self.Choice 
+1

Sie müssen sicherstellen, dass Ihr Code das Tutorial genau entspricht. Zum Beispiel sollten Sie '__str__' anstelle von Unicode definieren, verwenden Sie' @ python_2_unicode_compatible', wenn Sie Python 2 verwenden, und geben Sie 'self.question_text' und' self.choice_text' anstelle von 'self.Question' und' self.Choice zurück '. Wenn Sie immer noch einen Fehler erhalten, müssen Sie den vollständigen Traceback in Ihre Frage aufnehmen, andernfalls können wir nur raten, um welches Problem es sich handelt. – Alasdair

+0

Welchen Fehler bekommen Sie? – Marat

Antwort

0

für den Anfang Ihrer __unicode__ Methoden

ändern
class Question(models.Model): 
    question_text = models.CharField(max_length=200) 
    pub_date = models.DateTimeField('date published') 

    def __unicode__(self): 
     return self.question_text 


class Choice(models.Model): 
    question = models.ForeignKey(Question, on_delete=models.CASCADE) 
    choice_text = models.CharField(max_length=200) 
    votes = models.IntegerField(default=8) 

    def __unicode__(self): 
     return self.choice_text 
0

Aha..I wissen genau, was ich jetzt habe. Ich habe es mit Question_text und Choice_text getestet, bevor ich die Frage geschrieben habe. Es funktioniert mit question_text und choice_text. Das Problem mit dem Tippen, um tatsächlich zu lernen und über den Prozess nachzudenken, während ich gehe, ist, dass ich einfache Dinge übersehe. Danke an alle.

Verwandte Themen