Pregunta

Estoy usando Photologue en mi aplicación, y realmente me gusta el selector ManyToManyField que aparece en la aplicación de administración (dos cuadros de selección múltiple con flechas para mover elementos entre los estados seleccionados y no seleccionados, junto con < !> quot; Elija All " y " Clear All " opciones).

Estoy usando un código muy similar en mi propio modelo, pero mi selector <select multiple="multiple" ...> solo aparece como un campo admin.py normal. No puedo ver nada especial en Photologue models.py o <=>, y las dos aplicaciones se ejecutan en el mismo proyecto.

Mi modelo:

class Portfolio(models.Model):
    images      = models.ManyToManyField(Photo, related_name='portfolios')
    ...

Modelo relevante de Photologue:

class Gallery(models.Model):
    ....
    photos = models.ManyToManyField('Photo',
                                    related_name='galleries',
                                    verbose_name=_('photos'),
                                    null=True, blank=True)

Administrador de Photologue:

class GalleryAdmin(admin.ModelAdmin):
    list_display = ('title', 'date_added', 'photo_count', 'is_public')
    list_filter = ['date_added', 'is_public']
    date_hierarchy = 'date_added'
    prepopulated_fields = {'title_slug': ('title',)}
    filter_horizontal = ('photos',)

Alguien sabe lo que me estoy perdiendo? Publicaré capturas de pantalla si ayudaría.

Gracias,

Dom

¿Fue útil?

Solución

Consulte los documentos de django para filter_horizontal

  

un ingenioso y discreto JavaScript " filter " interfaz en lugar de la usabilidad impugnada < seleccione múltiples > en el formulario de administrador.

Licenciado bajo: CC-BY-SA con atribución
No afiliado a StackOverflow
scroll top