In Django 1.9, what's the convention for using JSONField (native postgres jsonb)? : <p>Django <a href="https://docs.djangoproject.com/en/1.9/ref/models/fields/#null">highly suggests</a> <strong>not</strong> to use <code>null=True</code> for CharField and TextField string-based fields in order not to have two possible values for "no data" (assuming you're allowing empty strings with <code>blank=True</code>).  This makes total sense to me and I do this in all my projects.</p>

<p>Django 1.9 introduces <a href="https://docs.djangoproject.com/en/1.9/ref/contrib/postgres/fields/#django.contrib.postgres.fields.JSONField">JSONField</a>, which uses the underlying Postgres <code>jsonb</code> data type.  Does the suggestion above carry over to JSONField (i.e. <code>blank=True</code> should be used instead of <code>null=True</code>)?  Or, should <code>null=True</code> be used instead?  Or, should <code>default=dict</code> be used instead?  Or, ..?  Why?</p>

<p>In other words, what is the convention for the new native JSONField, when you want to allow only one "no data" value?  Please support your answer because I did a lot of research and couldn't find anything official.  Thanks in advance.</p>
