Leyendo la documentación de Django:
get_user_model ()
En lugar de referirse al usuario directamente, debe hacer referencia al modelo de usuario usando django.contrib.auth.get_user_model (). Este método devolverá el modelo de usuario actualmente activo: el modelo de usuario personalizado si se especifica uno, o el usuario de lo contrario.
Cuando define una clave externa o relaciones de muchos a muchos con el modelo de usuario, debe especificar el modelo personalizado mediante la configuración AUTH_USER_MODEL.
Estoy confundido con el texto anterior. Debería estar haciendo esto:
author = models.ForeignKey(settings.AUTH_USER_MODEL)
o esto...
author = models.ForeignKey(get_user_model())
Ambos parecen funcionar.