यहां मैंने इसे हल किया है, लेकिन यह हैक (हैक के लिए) की तरह बहुत अधिक लगता है।
मैंने डीजेओ को संशोधित करने के लिए Google एपीआई से होस्ट किए गए jQuery का उपयोग किया, जो डीजेगो की अपनी 'शो/छुपा' स्क्रिप्ट का लाभ उठा रहा था। आप एक व्यवस्थापक पृष्ठ के HTML स्रोत को देखें, तो पिछले स्क्रिप्ट लोड यह है: अपने ही डोम-फेरबदल स्क्रिप्ट लोड करने के लिए उत्तोलन ModelAdmin media definitions:
<script type="text/javascript" src="/media/admin/js/admin/CollapsedFieldsets.js"></script>
कि फ़ाइल में टिप्पणी मुझे विचार प्रदान किया।
from django.contrib import admin
from django.contrib.admin.sites import AdminSite
from myapp.models import *
import settings
media = settings.MEDIA_URL
class MyParticularModelAdmin(admin.ModelAdmin):
# .....
class Media:
js = ('http://ajax.googleapis.com/ajax/libs/jquery/1.3.2/jquery.min.js',
media+'js/addCollapseToAllStackedInlines.js')
# .....
और फिर संदर्भित जावास्क्रिप्ट फ़ाइल के अंदर:
// addCollapseToAllStackedInlines.js
$(document).ready(function() {
$("div.inline-group").wrapInner("<fieldset class=\"module aligned collapse\"></fieldset>");
});
अंत परिणाम केवल StackedInline, नहीं TabularInline पर काम करता है।
स्रोत
2010-01-08 04:59:16
ध्यान दें, समाधान है कि जे एस (और मेरे वर्तमान एक करता है) में ऐसा क्षेत्र सेट उन में त्रुटियाँ हैं कि पतन नहीं करना चाहिए! –