2017-07-12 8 views
1

私は投票のチュートリアルに従おうとしていますurls.pyとプロジェクトのmodels.pyの両方をpollsディレクトリに含めました。次のエラーで'question_text'はこの関数の無効なキーワード引数です

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

結果:

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

個人用サイト/ 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), 
] 

世論調査/ 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 

答えて

0

あなたは、あなたが作業しているモデルをインポートする最初の必要性、Djangoのシェルでこれをやっている場合は、あなたのケースでは、モデル質問

のは、最初からすべてを思い出してみましょうをインポートする必要があります。

ステップ1:あなたのシェルを有効に

python manage.py shell 

ステップ2:お使いのモデル質問をインポートしてもタイムゾーン

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

ステップ3インポート:今すぐあなたを実行しますクエリ

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

あなたが気づいたことがある場合、あなたの質問によれば、あなたが間違っていたことがここにあります。

ステップ4:実行は、このすべては、APIと遊ぶPolls Tutorial w.r.tある方法

q.save() 

を保存します。

0

私はチュートリアルを学習している間に多くのコード変更を行いましたが、それらはSQLデータベースに反映されていないと思います。

だから、上記の手順を実行する前に、以下の手順に従ってください。

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

となりました。この

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() 
を行います
関連する問題