既存のレガシー DB から 2 つのモデルを作成しました。1 つは記事用、もう 1 つは記事に関連付けることができるタグ用です。
class Article(models.Model):
article_id = models.AutoField(primary_key=True)
text = models.CharField(max_length=400)
class Meta:
db_table = u'articles'
class Tag(models.Model):
tag_id = models.AutoField(primary_key=True)
tag = models.CharField(max_length=20)
article=models.ForeignKey(Article)
class Meta:
db_table = u'article_tags'
管理インターフェースから記事のタグを追加できるようにしたいので、admin.py
ファイルは次のようになります。
from models import Article,Tag
from django.contrib import admin
class TagInline(admin.StackedInline):
model = Tag
class ArticleAdmin(admin.ModelAdmin):
inlines = [TagInline]
admin.site.register(Article,ArticleAdmin)
インターフェイスは問題ないように見えますが、保存しようとすると次のようになります。
Warning at /admin/webserver/article/382/
Field 'tag_id' doesn't have a default value