私はDjangoの新機能で、これに基づいてブログを開発しようとしていました。Django:InteractiveConsoleに 'Post'という名前が定義されていません
python manage.py makemigrations
とpython manage.py migrate
のコマンドが正常に機能した後、私はInteractiveConsoleに入ってPost.objects.all()
を実行し、NameErrorを取得しました。
>>> Post.objects.all()
Traceback (most recent call last):
File "<console>", line 1, in <module>
NameError: name 'Post' is not defined
さらに、localhost:8000を実行すると、Serverは別のNameErrorを返します。
NameError at/
name 'Post' is not defined
Request Method: GET
Request URL: http://localhost:8000/
Django Version: 2.0
Exception Type: NameError
Exception Value:
name 'Post' is not defined
Exception Location: D:\experiment\blogproject\blog\views.py in index, line 6
Python Executable: d:\experiment\blogproject_env\Scripts\python.exe
Python Version: 3.6.3
Python Path:
['D:\\experiment\\blogproject',
'd:\\experiment\\blogproject_env\\Scripts\\python36.zip',
'd:\\experiment\\blogproject_env\\DLLs',
'd:\\experiment\\blogproject_env\\lib',
'd:\\experiment\\blogproject_env\\Scripts',
'd:\\professional soft\\python3.6.3\\Lib',
'd:\\professional soft\\python3.6.3\\DLLs',
'd:\\experiment\\blogproject_env',
'd:\\experiment\\blogproject_env\\lib\\site-packages']
Server time: 星期五, 22 十二月 2017 16:08:10 +0800
以下は私のviews.pyです。
from django.shortcuts import render
from django.http import HttpResponse
def index(request):
post_list = Post.objects.all().order_by('-created_time')
return render(request, 'blog/index.html', context={'post_list': post_list})
場合によっては、models.pyに郵便番号があります。
クラス・ポスト(models.Model): タイトル= models.CharField(max_lengthを= 70)
body = models.TextField()
created_time = models.DateTimeField()
modified_time = models.DateTimeField()
excerpt = models.CharField(max_length=200, blank=True)
category = models.ForeignKey(Category, on_delete=models.CASCADE)
tags = models.ManyToManyField(Tag, blank=True)
author = models.ForeignKey(User, on_delete=models.CASCADE)
def __str__(self):
return self.title
はそんなにありがとう!
ここで、import文は何ですか?例えば。より.models import Post –