title: Django set default form values
body: <p>I have a Model as follows:</p>
  
  <pre><code>class TankJournal(models.Model):
      user = models.ForeignKey(User)
      tank = models.ForeignKey(TankProfile)
      ts = models.IntegerField(max_length=15)
      title = models.CharField(max_length=50)
      body = models.TextField()
  </code></pre>
  
  <p>I also have a model form for the above model as follows:</p>
  
  <pre><code>class JournalForm(ModelForm):
      tank = forms.IntegerField(widget=forms.HiddenInput()) 
  
      class Meta:
          model = TankJournal
          exclude = ('user','ts')
  </code></pre>
  
  <p>I want to know how to set the default value for that tank hidden field. Here is my function to show/save the form so far:</p>
  
  <pre><code>def addJournal(request, id=0):
      if not request.user.is_authenticated():
          return HttpResponseRedirect('/')
  
      # checking if they own the tank
      from django.contrib.auth.models import User
      user = User.objects.get(pk=request.session['id'])
  
      if request.method == 'POST':
          form = JournalForm(request.POST)
          if form.is_valid():
              obj = form.save(commit=False)
  
              # setting the user and ts
              from time import time
              obj.ts = int(time())
              obj.user = user
  
              obj.tank = TankProfile.objects.get(pk=form.cleaned_data['tank_id'])
  
              # saving the test
              obj.save()
  
      else:
          form = JournalForm()
  
      try:
          tank = TankProfile.objects.get(user=user, id=id)
      except TankProfile.DoesNotExist:
          return HttpResponseRedirect('/error/')
  </code></pre>