Django内联表单新添加了外键字段但未在新添加的内联行中显示

时间:2011-01-24 12:56:38

标签: django django-admin

我是Django世界的新手。我的问题是我有两个模型如下所示。它与Grapelli和inline-sortables配合得非常好。唯一的问题是每当我为“设备”或“图像类型”字段添加新的外键时。它们不会显示在新添加的内联行的下拉菜单中。我通过互联网但无法找到一个微笑的问题和解决方案。 我很感激你的帮助。

我的模特是:

from django.db import models
from datetime import datetime
from thumbs import ImageWithThumbsField
from positions.fields import PositionField 
class Artist(models.Model):
name = models.CharField(max_length=55)
   def __unicode__(self):
       return self.name

class ImageType(models.Model):
   name = models.CharField(max_length=55)
   def __unicode__(self):
       return self.name

class Equipment(models.Model):
   name = models.CharField(max_length=55)
   def __unicode__(self):
       return self.name

class Image(models.Model):
   name = models.CharField(max_length=255)
   image_file = models.ImageField(upload_to = "images/%Y-%m-%d")
   Image_Type = models.ForeignKey(ImageType)
   upload_date = models.DateTimeField('date_published',default=datetime.now)
   artist = models.ForeignKey(Artist)
   equipment = models.ForeignKey(Equipment)
   order = PositionField(collection='artist')
   def __unicode__(self):
       return self.name

   class Meta:
       ordering = ['order']

我的admin.py是:

from gallery.models import Image,ImageType,Artist,Equipment
from django.contrib import admin

class ImageUploadAdmin(admin.ModelAdmin):
   fields = ['name','artist','equipment','image_file','Image_Type','upload_date']
   list_filter = ['upload_date']
   date_hierarchy = 'upload_date'

class ImageInline(admin.TabularInline):
   model = Image
   list_display = ('name','equipment','image_file','Image_Type','upload_date')
   sortable_field_name = "order"
   exclude = ('upload_date',)
   extra = 0

class ArtistAdmin(admin.ModelAdmin):
   inlines = [
       ImageInline,
   ]

admin.site.register(Artist,ArtistAdmin)
admin.site.register(Image, ImageUploadAdmin)
admin.site.register(ImageType) 
admin.site.register(Equipment)

0 个答案:

没有答案