我正在为一位摄影师开发一个项目,该项目有一个名为 Categories 的应用程序:所有照片都有 4 个预定类别,每张照片都属于一个类别。
我想要的是管理员有一个名为Categories
. 当您单击它时,管理员必须显示 4 个预定类别,当您单击特定类别时,必须有上传照片的选项。
我的意思是,本节的最终结构必须是:
管理---->类别------>
- CATEGORY 1 ----->上传属于cat1的照片
- CATEGORY 2 ----->上传属于cat2的照片
- CATEGORY 3 ----->上传属于cat3的照片
- CATEGORY 4 ----->上传属于cat4的照片
我有这个代码:
class Category(models.Model):
CATEGORY_CHOICES = (
('CAT1', 'Category 1'),
('CAT2', 'Category 2'),
('CAT3', 'Category 3'),
('CAT4', 'Category 4'),
)
category = models.CharField(verbose_name='Category', max_length=3, choices=CATEGORY_CHOICES, help_text='Choose de category of the image upload')
def __unicode__(self):
return u"%s"%self.category
class Meta:
verbose_name='Image'
verbose_name_plural='Images'
class ImageCategory(models.Model):
category = models.ForeignKey(Category, verbose_name='Category')
image = models.ImageField(verbose_name='Image', upload_to='images/')
def __unicode__(self):
return u"%s"%self.category
class Meta:
verbose_name='Image'
verbose_name_plural='Images'
在管理员中:
class ImageCategoryInline(admin.TabularInline):
model=ImageCategory
classes=('open',)
inline_classes=('open',)
extra=0
class CategoryAdmin(admin.ModelAdmin):
inlines = [ImageCategoryInline]
admin.site.register(Category, CategoryAdmin)