Из документа настройки grappelli было предложено:
The sortable-field will not automatically be hidden
(use a Hidden Input Widget if needed).
Однако я так долго искал и понятия не имею, что такое «скрытый виджет ввода» и как я могу быть реализован в модели Django. Вот мой код:
# models.py
class video(models.Model):
category = models.ForeignKey(subCategory)
index = PositionField('index')
video_title = models.CharField(max_length=255, blank=True, null=True)
video_desc = models.TextField(blank=True, null=True)
main_img = S3EnabledImageField(upload_to='video_img', blank=True, null=True)
small_img = S3EnabledImageField(upload_to='video_img', blank=True, null=True)
mid_img = S3EnabledImageField(upload_to='video_img', blank=True, null=True)
large_img = S3EnabledImageField(upload_to='video_img', blank=True, null=True)
last_updated = models.DateField(auto_now=True)
date_added = models.DateField()
date_modified = models.DateField()
date_published = models.DateField(blank=True, null=True)
date_closed = models.DateField(blank=True, null=True)
status = models.CharField(max_length=7,choices=STATUS_CHOICE)
class Meta:
ordering = ('index',)
verbose_name = 'Video'
verbose_name_plural = 'Video'
def __unicode__(self):
return self.video_title
class video_file(models.Model):
video = models.ForeignKey(video)
index = models.PositiveIntegerField()
file_title = models.CharField(max_length=255, blank=True, null=True)
#main_file = models.ImageField(upload_to='phoneso/video_file', blank=True, null=True)
main_file = S3EnabledFileField(upload_to='video_file')
resolution = models.CharField(max_length=50, blank=True, null=True)
file_format = models.CharField(max_length=50, blank=True, null=True)
date_added = models.DateField(auto_now_add=True)
date_published = models.DateField(auto_now_add=True)
status = models.CharField(max_length=7,choices=STATUS_CHOICE)
class Meta:
ordering = ('index',)
verbose_name = 'Video File'
verbose_name_plural = 'Video File'
def __unicode__(self):
return self.video.video_title
# admin.py
class video_fileInline(admin.TabularInline):
fields = ('main_file' , 'resolution' , 'file_format' , 'status', 'index',)
sortable_field_name = 'index'
model = video_file
extra = 1
class videoAdmin(admin.ModelAdmin):
list_display = ('index' , 'video_title', 'category' , 'date_added' , 'date_published' , 'status')
search_fields = ['video_title', 'desc']
readonly_fields = ('date_added','date_modified')
list_filter = ['category']
inlines = [video_fileInline]
class video_fileAdmin(admin.ModelAdmin):
list_display = ('index' , '__unicode__' , 'file_title', 'resolution' , 'file_format' , 'main_file' , 'date_added' , 'date_published' , 'status')
search_fields = ['video_title', 'desc']
Где мне реализовать предложенный «скрытый виджет ввода»?
Спасибо.