2012-10-12 8 views
7

Ho un modello con due campi che sono chiavi esterne per altri modelli.django-grappelli Ricerche di completamento automatico con più campi di chiave esterna

class Homepage(models.Model): 
    featured_user = models.ForeignKey('auth.user') 
    featured_story = models.ForeignKey('site_stories.story') 

    @staticmethod 
    def autocomplete_search_fields(): 
    return ("featured_user__icontains", "featured_story__icontains",) # Is this right? 


class HomepageAdmin(admin.ModelAdmin): 
    raw_id_fields = ('featured_user', 'featured_story',) 
    autocomplete_lookup_fields = { 
    'fk': ['featured_user'], 
    'fk': ['featured_story'] # <====== What should this be??? 
    } 
admin.site.register(Homepage, HomepageAdmin) 

Dopo reading the admin docs e cercando un paio di cose, è apparso chiaro che si letteralmente necessario utilizzare il "fk" etichetta per Grappelli di applicare la ricerca completamento automatico formattazione a un campo. Quindi ... come posso fare questo con questo modello, dove ci sono più campi chiave estranei?

risposta

11
class HomepageAdmin(admin.ModelAdmin): 
    raw_id_fields = ('featured_user', 'featured_story',) 
    autocomplete_lookup_fields = { 
    'fk': ['featured_user','featured_story'], 
    } 
+0

Oh, duhhhhh. -1 per me per essere un IDIOT. – TAH

+6

La documentazione non è molto chiara. –

Problemi correlati