私はブログを作成するためにdjangoを使用しています。仮想環境内にインストールされ、djangoタグ付けがインストールされています。私は南でDB移行を行っており、すべてが私の移行で正常に機能しているようですが、タグ付けテーブルが作成されていないようです。そのため、管理者を介してブログ投稿を追加しようとすると、有名なpostgresqlエラーが発生します。
Exception Type: DatabaseError at /admin/bppsite/blogpost/add/
Exception Value: relation "tagging_tag" does not exist
LINE 1: ...ECT "tagging_tag"."id", "tagging_tag"."name" FROM "tagging_t...
これが私のmodels.pyの関連部分です:
from south.modelsinspector import add_introspection_rules
add_introspection_rules([], ["^tagging\.fields\.TagField"])
from tagging.models import Tag
from tagging.fields import TagField
class BlogPost(models.Model):
title = models.CharField(max_length = 255)
text = models.TextField()
author = models.ForeignKey(User)
created = models.DateTimeField(auto_now_add = True)
modified = models.DateTimeField(auto_now = True)
status = models.CharField(max_length = 10, choices=POST_STATUS_CHOICES, default='DRAFT')
slug = models.SlugField(max_length = 255, blank=True)
category = models.ManyToManyField(Category)
tags = TagField()
def __unicode__(self):
return self.title
class Meta:
ordering = ["-created"]
def save(self):
if not self.id:
self.slug = slugify(self.title)
super(BlogPost, self).save()
def set_tags(self, tags):
Tag.objects.update_tags(self, tags)
def get_tags(self, tags):
return Tag.objects.get_for_object(self)
そして、settings.pyからインストールされたアプリ:
INSTALLED_APPS = (
'django.contrib.auth',
'django.contrib.contenttypes',
'django.contrib.sessions',
'django.contrib.sites',
'django.contrib.messages',
'django.contrib.staticfiles',
# Uncomment the next line to enable the admin:
'django.contrib.admin',
# Uncomment the next line to enable admin documentation:
# 'django.contrib.admindocs',
'south',
'tinymce',
'tagging',
'bppsite',
)
INSTALLED_APPSでアプリの順序を移動しようとしましたが(タグ付けはアプリの前に行う必要があるかもしれないと考えています)、違いはないようです。
簡単なことになるとは思いますが、理解できません。
ありがとうアーロン