2017-07-22 1 views
1

Je suis un débutant essayant d'afficher un jeu de base avec deux enregistrements. Je ne suis pas en mesure de traiter la demande. Vous cherchez de l'aide.django modelsTypeError: le décodage str n'est pas supporté

class TestVenue(models.Model): 
    venue_name  = models.CharField(max_length=40) 
    venue_city  = models.CharField(max_length=20, null=True, blank=True) 
    venue_province = models.CharField(max_length=20, null=True, blank=True) 
    venue_shortcode = models.CharField(max_length=20, null=True, blank=True) 
    timestamp  = models.DateTimeField(auto_now_add=True) 
    update   = models.DateTimeField(auto_now=True) 
    my_date_field = models.DateField(auto_now=False, auto_now_add=False) 

    def __str__(self): 
     return self.venue_name 

mon views.py est assez simple

def venues_listview(request): 
    template_name = 'venues_list.html' 
    queryset = TestVenue.objects.all() 
    context = { 
     "object_list": queryset 
     } 
    return render(request, template_name, context) 

de la coquille que je veux voir mon queryset mais je reçois l'erreur suivante:

>>> from venues.models import TestVenue 
>>> TestVenue.object.all() 
Traceback (most recent call last): 
    File "<console>", line 1, in <module> 
AttributeError: type object 'TestVenue' has no attribute 'object' 
>>> TestVenue.objects.all() 
Traceback (most recent call last): 
    File "<console>", line 1, in <module> 
    File "C:\users\frank\desktop\test_env\lib\site-packages\django\db\models\query.py", line 229, in __repr__ 
    return '<%s %r>' % (self.__class__.__name__, data) 
    File "C:\users\frank\desktop\test_env\lib\site-packages\django\db\models\base.py", line 589, in __repr__ 
    u = six.text_type(self) 
    File "C:\users\frank\desktop\test_env\src\venues\models.py", line 14, in __str__ 
    #   return self.venue_name 
TypeError: decoding str is not supported 
+0

Quelle est votre version de python? – Exprator

Répondre

1

Votre erreur est dans cette ligne ,

TestVenue.object.all() 

It shou ld être,

TestVenue.objects.all() 

objects est l'attribut qui appelle le gestionnaire par défaut, pas object.

+0

Non Résolue >>> TestVenue.objects.all() retraçage (appel le plus récent en dernier): Fichier "", ligne 1, dans fichier « C: \ users \ frank \ Desktop \ test_env \ lib \ site-packages \ django \ db \ models \ query.py ", ligne 229, dans __repr__ renvoient '<%s %r>'% (self .__ classe __.__ nom__, données) Fichier" C: \ users \ frank \ desktop \ test_env \ lib \ package \ site \ django \ db \ models \ base.py ", ligne 589, dans __repr__ u = six.text_type (auto) Fichier" C: \ users \ frank \ desktop \ test_env \ src \ sites \ models. py ", ligne 14, dans __str__ # return self.venue_name TypeError: décodage str non pris en charge –

+0

Je suis Utiliser python 3.4 –

+0

Avez-vous exécuté 'makemigrations' et' migrate'? – zaidfazil

0

J'ai redémarré mon ordinateur et cela fonctionne maintenant. J'avais essayé de démarrer et d'arrêter le serveur mais cela n'avait pas réglé le problème. Merci pour l'aide.

+0

Acceptez votre réponse pour être plus clair que c'est parti. – hynekcer