2010-03-23 7 views
0

Lors de l'utilisation de formulaires en ligne, comment fait-on la radiomessagerie? J'utilise django 1.1. La situation dans laquelle je suis, c'est que l'utilisateur doit être capable de modifier les objets liés rapidement et facilement (c'est pourquoi je pense que je devrais utiliser un formset en ligne). Cependant, il peut y avoir plus d'une centaine d'objets à éditer, ce qui rend un ensemble de formulaires assez grand, donc la pagination aurait du sens.Django Inline formset pour éditer plusieurs enregistrements associés à la fois - la bonne façon d'y aller?

Y a-t-il une meilleure façon de faire cela?

Merci Bert

+0

On dirait que vous essayez de repousser les limites de ce que l'interface d'administration est supposée faire. Je suggère de rouler votre propre interface ... Inlines n'ont pas de capacités de pagination; vous allez vous retrouver avec une très longue page, pas très conviviale. – cethegeek

+0

Merci, mais ce n'est pas pour l'interface d'administration. Devrais-je plutôt utiliser des formsets réguliers pour éditer les objets associés? –

Répondre

1

Malheureusement je ne pouvais pas obtenir la pagination de travailler avec formsets. Au lieu de cela j'ai étendu BaseInlineFormSet et changé la méthode get_queryset pour renvoyer seulement un sous-ensemble des objets qui devaient être édités et fixer une limite sur le nombre maximum d'objets retournés. Ainsi, lorsque l'utilisateur veut éditer des objets associés, il ne peut éditer qu'un nombre défini d'objets à la fois, par ex. 20 de la 60 possible. Lorsque l'utilisateur a terminé l'édition des 20 premiers et soumet le formulaire, les 20 suivants seront affichés.

Questions connexes