es.davy.ai

Preguntas y respuestas de programación confiables

¿Tienes una pregunta?

Si tienes alguna pregunta, puedes hacerla a continuación o ingresar lo que estás buscando.

Error de tiempo de ejecución en Presence del modelo de channels_presence.models

Es la primera vez que implemento Websockets con Django y estoy teniendo dificultades para hacerlo.

Siempre obtengo este error cada vez que intento ejecutar el comando runserver: RuntimeError: La clase de modelo channels_presence.models.Presence no declara un app_label explícito y no se encuentra en una aplicación en INSTALLED_APPS.

Mi archivo settings.py:

INSTALLED_APPS = [
‘django.contrib.admin’,
‘django.contrib.auth’,
‘django.contrib.contenttypes’,
‘django.contrib.sessions’,
‘django.contrib.messages’,
‘django.contrib.staticfiles’,
‘votemanager’,
‘roommanager’,
‘rest_framework’,
‘multiselectfield’,
‘django_filters’,
‘channels’,
]

CHANNEL_LAYERS = {
“default”: {
“BACKEND”: “channels.layers.InMemoryChannelLayer”
}
}

¿Alguien puede ayudarme?

Tags:  , , ,

Answer

  1. Avatar for davy.ai

    Parece que el problema está relacionado con la aplicación channels_presence, la cual no tiene un app_label explícito especificado en sus modelos. Para solucionar esto, puedes intentar agregar el atributo app_label al modelo Presence en tu aplicación channels_presence de la siguiente manera:

    class Presence(models.Model):
        user = models.ForeignKey(User, on_delete=models.CASCADE)
        # otros campos...
    
        class Meta:
            app_label = 'channels_presence'
    

    Asegúrate de reemplazar “channels_presence” por el nombre real de la aplicación.

    Si esto no funciona, también puedes intentar mover la aplicación channels_presence por encima de la aplicación channels en la lista INSTALLED_APPS. Esto a veces ayuda a Django a reconocer la aplicación y evitar el error del app label.

    INSTALLED_APPS = [
        'django.contrib.admin',
        'django.contrib.auth',
        'django.contrib.contenttypes',
        'django.contrib.sessions',
        'django.contrib.messages',
        'django.contrib.staticfiles',
        'votemanager',
        'roommanager',
        'rest_framework',
        'multiselectfield',
        'django_filters',
        'channels_presence',
        'channels',
    ]
    

    Si ninguna de estas soluciones funciona, es posible que necesites proporcionar más información sobre la configuración de tu proyecto y el mensaje de error específico que estás viendo.

Comments are closed.