2009-06-28 14 views
18

में प्रारंभिक मान कैसे दें मॉडल मॉडल के अंदर फ़ील्ड में प्रारंभिक मान कैसे आवंटित करें? उदाहरण के लिए:मॉडलफॉर्म

class Form2(djangoforms.ModelForm): 
    class Meta: 
     model=SomeModel 
     fields=('title',) 

मुझे क्या करना कोशिश कर रहा हूँ एक CRUD उत्पन्न है:

class Form1(forms.Form): 
    title=forms.CharField(initial="hello") 

क्या इस modelForm जिसका बुनियादी वाक्य रचना है कुछ की तरह उपयोग करने के लिए बराबर होगी। चूंकि मैं इसे एक एपेंजिन परियोजना में कर रहा हूं, इसलिए मैं सामान्य विचारों का उपयोग नहीं कर सकता। एपेंगिन ने हमें djangoforms.ModelForm प्रदान किया है जो कि django के ModelForm की तरह काम करता है लेकिन ऐपेंगिन के डेटास्टोर का उपयोग करता है।

मुझे "संपादन" भाग करने के लिए उपर्युक्त कार्यक्षमता की आवश्यकता है।

+0

संबंधित: http://stackoverflow.com/q/604266/212218 –

उत्तर

24

आम तौर पर आप जिस मॉडल ऑब्जेक्ट को संपादित कर रहे हैं, उदाहरण के रूप में आप कीवर्ड के रूप में संपादन कर रहे हैं: Form2(instance = somemodelobject), लेकिन मुझे नहीं पता कि यह GAE पर काम करता है या नहीं। तुम हमेशा, आपके प्रपत्र के निर्माता के लिए प्रारंभिक शब्दकोश पारित कर सकते हैं

Form2(initial = {"title": "blahblah"}) 
+1

धन्यवाद, दोनों तरीकों उदाहरण के लिए आपने काम दिया ... – Dhushyanth

4

मॉडल फार्म चूक मॉडल से ही लिया जाता है की तरह।

class SomeModel(models.Model): 
    title = models.CharField(max_length=45, default="hello") 

आप अपने ModelForm में कोई परिवर्तन करने की जरूरत नहीं है:

class RequestForm(forms.ModelForm): 

    class Meta: 
     model = SomeModel 
संबंधित मुद्दे