 <p>There are two ways. The quick way to is to change the <code>__unicode__</code> return for your <code>TestTable</code> to return the field you like. However you might only want to show that field in current form but not other places, so it's not ideal.</p> <p>Second option, you could define you own form field. It inherits <code>ModelChoiceField</code>, but override <code>label_from_instance</code> method:</p> <pre><code>class TestTableModelChoiceField(forms.ModelChoiceField): def label_from_instance(self, obj): # return the field you want to display return obj.display_field class TestForm(forms.ModelForm): type = TestTableModelChoiceField(queryset=Property.objects.all().order_by('desc1')) </code></pre>