<p>Say I have this simple form:</p>

<pre><code>class ContactForm(forms.Form):
    first_name = forms.CharField(required=True)
    last_name = forms.CharField(required=True)
</code></pre>

<p>And I have a default value for one field but not the other.  So I set it up like this:</p>

<pre><code>default_data = {'first_name','greg'}
form1=ContactForm(default_data)
</code></pre>

<p>However now when I go to display it, Django shows a validation error saying last_name is required:</p>

<pre><code>print form1.as_table()
</code></pre>

<p>What is the correct way to do this?  Since this isn't data the user has submitted, just data I want to prefill.</p>

<p><strong>Note:</strong> required=False will not work because I do want it required when the user submits the data. Just when I'm first showing the form on the page, I won't have a default value.</p>

From the django docs is this:
```
```
from django import forms
class ContactForm(forms.Form):
    subject = forms.CharField(max_length=100)
    message = forms.CharField()
    sender = forms.EmailField()
    cc_myself = forms.BooleanField(required=False)
```
```
The "required=False" should produce the effect you're after.