我使用Django Framework 所以我有这个文件:
models.py
from django.db import models
from django.utils import timezone
class Post(models.Model):
author = models.ForeignKey('auth.User')
title = models.CharField(max_length = 200)
text = models.TextField()
created_date = models.DateTimeField(blank = timezone.now)
published_date = models.DateTimeField(blank = True, null = True)
def publish(self):
self.published_date = timezone.now()
self.save()
def __str__(self):
return self.title
class Menu(models.Model):
label = models.CharField(max_length = 50)
url = models.CharField(max_length = 200)
position = models.IntegerField(default = 0)
views.py
from django.shortcuts import render, get_object_or_404
from django.http import HttpResponse
from django.template import RequestContext
from models import Post, Menu
def index(request):
post_list = Post.objects.order_by('-published_date')
menu_items = Menu.objects.order_by('position')
context = {'post_list' : post_list, 'menu_items' : menu_items }
return render(request, 'blog/index.html', context)
def post(request, post_id):
post = get_object_or_404(Post, pk = post_id)
menu_items = Menu.objects.order_by('position')
context = {'post' : post, 'menu_items' : menu_items }
return render(request, 'blog/post.html', context)
最近我试图添加类别模型,如:
class Categories(models.Model):
fields
在Post模型中,我添加了类似的内容:
category = models.ForeignKey('Categories')
我忘记使用默认命令,当我尝试makemigrations时,他们要求我输入一个值或类似的东西..我写了'Home',之后我尝试迁移manage.py i'我得到了以下错误:http://puu.sh/k0BLh/0dd2da2657.png
我已经从Post中删除了类别模型和类别字段,当我尝试迁移manage.py时,我得到了相同的错误,但网站正常工作(runserver)..如何解决这个问题?
我想要一个表格类别,当我添加一个新帖子时,我希望有一个字段从类别中选择类别..
答案 0 :(得分:0)
迁移只是python文件。您可以修复不正确的迁移,也可以只删除它并再次运行makemigrations
命令。这个documentation page解释了迁移文件的结构。
答案 1 :(得分:0)
再次尝试迁移并提供None
值。