Modell Django Umfrage

8

Ich arbeite an den Django-Tutorials , und jetzt erstelle ich eine Umfrage.

Der folgende Code funktioniert gut, bis ich Auswahlmöglichkeiten erstellen möchte. Aus irgendeinem Grund bekomme ich immer diese Fehlermeldung:

%Vor%

Was mache ich falsch?

Hier ist mein Code:

%Vor%     
MacPython 11.05.2010, 13:29
quelle

4 Antworten

10

Die __unicode__ -Methode für das Choice -Modell sollte ungefähr wie folgt aussehen:

%Vor%

question Attribut ist nicht im Choice -Modell vorhanden, Sie müssen es über das poll Fremdschlüsselfeld erreichen.

Vergessen Sie nicht, sich Djangos großartige Dokumentation anzuschauen, in der viele Beispiele gezeigt werden, wie Sie mit vielen zu eins-Beziehungen umgehen können

a>.

Bearbeiten

Es wäre wahrscheinlich sinnvoller für return self.choice in Choice model __unicode__ method, so dass es die tatsächliche Auswahl und nicht die Poll-Frage ausgibt.

%Vor%     
Davor Lucic 11.05.2010, 13:34
quelle
7

Um der Antwort von Rebus nachzugehen, sagt das Lernprogramm eigentlich, jedem Modell unterschiedliche Renditen hinzuzufügen:

%Vor%

Sie hatten 'self.question' als Rückgabe für beide - ich denke, Sie haben den gleichen Kopier- / Einfügefehler gemacht wie zuvor, oder das Tutorial hatte vorher diesen Fehler; -)

    
Peter Hanley 04.02.2011 03:31
quelle
4

Es sollte sein:

%Vor%

Weil die Umfrage ein verwandtes Modell ist, das die Frage enthält.

    
Reto Aebersold 11.05.2010 13:33
quelle
1

Dies liegt an einem menschlichen Gehirnfehler oder einem Kopier- / Einfügefehler. Wir / Sie dachten, dass beide Funktionen identisch waren und kopierten denselben Code für beide, aber es gab ein unterschiedliches Wort in beiden.

ersetzen Sie question zu choice in Zeile 22

    
aWebDeveloper 21.05.2013 16:11
quelle

Tags und Links