La consulta de coincidencia de ContentType no existe en post_syncdb

Estoy tratando de agregar agregar algunos datos a la base de datos tan pronto como se crean las tablas, usando elpost_syncdb señal.

signals.post_syncdb.connect(init)

Luego, en la función init, quiero establecer un permiso, así que uso

ct = ContentType.objects.get(app_label='news', model='Article')
Permission(name='Approve articles', codename='can_approve_article', content_type=ct)

Pero si suelto todas las mesas y corrosyncdb, Yo obtengo

...
File "...\base\functions\init.py", line 11, in init
  ct = ContentType.objects.get(app_label='news', model='Article')
...
django.contrib.contenttypes.models.DoesNotExist: ContentType matching query does not exist.

Algunas pruebas que he hecho:

Funciona bien si intento este código fuerasyncdb.También funciona bien si lo dejosyncdb cree todas las tablas sin este código, y luego agregue este código y ejecute syncdb sin que tenga que realizar ningún cambio.Y estoy bastante seguro de que solía funcionar, pero desde entonces he cambiado muchas cosas en otros lugares, así que no sé por dónde empezar.Me sale el mismo error para otros modelos en diferentes aplicaciones.La señal se dispara aproximadamente 10 veces, solo las primeras veces se produce el error.

Muchas gracias por cualquier consejo!

Respuestas a la pregunta(1)

Su respuesta a la pregunta