का उपयोग कर रहा कुछ इस तरह के निर्माण को स्वचालित करने के कोशिश कर रहा हूँ बनाने के लिए:Django: HTML इनपुट सरणी एक Django रूप
<input type='text' name='asdf[]' />
<input type='text' name='asdf[]' />
<input type='text' name='asdf[]' />
रूप में एक सीमा को दोहराते रहते हैं। मैं कई अन्य भिन्नताओं के साथ इस तरह की चीजों की कोशिश कर रहा हूं:
# in a model class
for i in range(1, prim+1):
self.fields['asdf'] = forms.CharField(label=i)
# in the template
<form action='#' method='post'>
{{form.as_p}}
</form>
लेकिन मुझे कोई भाग्य नहीं मिला है।
मैं इनपुट की एक सरणी स्वचालित करने के बारे में कैसे जा सकता हूं?
** संपादित ** स्पष्ट करने के लिए, अंत में मैं इस तरह टेम्पलेट में खेतों उपयोग करने में सक्षम होने की जरूरत है:
{% for input in form.fields.asdf %}
{{input}}
{% endfor %}
कौन सा तो उम्मीद है कि मुझे मूल इनपुट सूची ऊपर दिखाए गए मिलेगा .. ।
में आपका लूप सिर्फ एक अवैध लेबल (एक पूर्णांक नहीं हो सकता है) और ओवरराइटिंग self.field ['asdf'] के साथ एक नया चारफिल्ड बना रहा है। मुझे यकीन नहीं है कि आप क्या करने की कोशिश कर रहे हैं। क्या आप विकल्प विशेषता का उपयोग करने का मतलब है? –
हाँ, इसका विशेष संस्करण बस ओवरराइट करता है। सूचियों और/या शब्दकोश बनाने की कोशिश करने से पहले मेरे पास अधिक जटिल कोड था लेकिन मैं उन्हें काम करने के लिए नहीं मिला। – Brant
शायद आप अपने लेबल 'asdf' या कुछ बना सकते हैं, फिर सभी फ़ील्ड के माध्यम से लूप कर सकते हैं, अगर '{% ifequal field.label 'asdf'%} 'मैचों को आउटपुट करते हैं, और फिर 1, 2 दिखाने के लिए' forloop.counter' का उपयोग करें , 3, आदि। मैंने नीचे अपना जवाब अपडेट किया। –