Mithilfe von __str__ () - Methode in Django für Python 2
Lerne ich Django mit der Django-Projekt-Lernprogramm.
Da ich python 2.7 ich bin nicht in der Lage, um die Umsetzung der folgenden in der python 2.7:
from django.db import models
class Question(models.Model):
# ...
def __str__(self): # __unicode__ on Python 2
return self.question_text
class Choice(models.Model):
# ...
def __str__(self): # __unicode__ on Python 2
return self.choice_text
Antwort ist schon in die Kommentare!
Akzeptierte Antwort sein sollte, dass man von @alfetopito, weil dieser Technik ist die beste übereinstimmung für Django-Portierung der Philosophie.
Akzeptierte Antwort sein sollte, dass man von @alfetopito, weil dieser Technik ist die beste übereinstimmung für Django-Portierung der Philosophie.
InformationsquelleAutor bhavya | 2015-02-17
Du musst angemeldet sein, um einen Kommentar abzugeben.
Halten die code-kompatibel zwischen py2 und py3, eine bessere Möglichkeit ist die Verwendung des decorator
python_2_unicode_compatible
.Auf diese Weise halten Sie die str Methode:
Referenz: https://docs.djangoproject.com/en/1.8/topics/python3/#str-and-unicode-methods
__str__
fordert, dass seine Eltern__str__
mit, dass decorator. Etwas bewusst zu sein. Sorry für den necro.InformationsquelleAutor alfetopito
Ja, Sie können, Sie ersetzen Sie einfach
__str__
mit__unicode__
, wie der Kommentar besagt:Weiter unten in diesem Abschnitt finden Sie eine Erklärung:
Den
question_text
undchoice_text
Attribute return Unicode-Werte bereits.InformationsquelleAutor Martijn Pieters