2017-07-12 5 views
1

Ich versuche, die Umfragen-Tutorial zu folgen Ich schließe sowohl die urls.py, aus dem Projekt und die models.py aus dem Verzeichnis Umfragen.'question_text' ist ein ungültiges Schlüsselwort Argument für diese Funktion

q = Question(question_text="some text", pub_date=timezone.now)) 

Ergebnisse in dem folgenden Fehler:

'question_text' is an invalid keyword argument for this function. 

mysite/urls.py

from django.conf.urls import include, url 
from django.contrib import admin 

urlpatterns = [ 
    url(r'^polls/', include('polls.urls')), 
    url(r'^admin/', admin.site.urls), 
] 

polls/models.py

import datetime 
from django.db import models 
from django.utils import timezone 

# Create your models here. 

class Poll(models.Model): 
    question = models.CharField(max_length=200) 
    pub_date = models.DateTimeField('date published') 


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

    def __str__(self): 
     return self.question_text 

    def was_published_recently(self): 
     return self.pub_date >= timezone.now() - datetime.timedelta(days=1) 


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

    def __str__(self): 
     return self.choice_text 

Antwort

0

Wenn Sie dies in django Shell tun, müssen Sie zunächst die Modelle importieren müssen mit dem Sie arbeiten, in Ihrem Fall müssen Sie Modell Frage

ist alles von Anfang an wieder importieren lassen.

Schritt 1: Aktivieren des Shell

python manage.py shell 

Schritt 2: Importieren Sie Ihr Modell Frage und auch Zeitzone

from polls.models import Question 
from django.utils import timezone 

Schritt 3 importieren: Führen Sie nun Ihre Abfrage

q = Question(question_text="What's new?", pub_date=timezone.now()) 

Wenn Sie bemerkt haben, hier ist, was Sie falsch gemacht haben, nach Ihrer Frage.

Schritt 4: Führen Sie speichern Methode

q.save() 

All dies ist w.r.t Polls Tutorial mit api Spielen.

0

Ich denke, beim Lernen Tutorial haben Sie viele Codeänderungen vorgenommen und diese sind nicht in der SQL-Datenbank wider.

SO, bevor Sie oben Ihre Schritte folgen den folgenden Schritten.

python manage.py migrate 
python manage.py makemigrations polls 
python manage.py migrate 

und jetzt tun dies

python manage.py shell 
from polls.models import Question 
from django.utils import timezone 
q = Question(question_text="What's new?", pub_date=timezone.now() 
q.save() 
Verwandte Themen