python – Guión en la aplicación django

Bueno, me topé con un problema con las importaciones y una aplicación Django que tiene un guión en su nombre.

Por lo que sé, los guiones ni siquiera están permitidos en los nombres de las aplicaciones de Django, pero sigue ahí y el sitio web se ejecuta sin errores. No tengo la menor idea de cómo se creó la aplicación, ya que el proyecto ya existía cuando comencé a trabajar en él. (Es un proyecto de Django CMS si eso cambia algo por cierto)

Ahora, el problema es que cuando quiero importar algo en el shell o en un proyecto no puedo escribir desde el módulo de importación de mi aplicación, ya que siempre produce un error debido al halo.

También en las INSTALLED_APPS se enumera con el hypen INSTALLED_APPS = (‘my-app’)

Entonces, ¿cómo puedo realmente arreglar esto y hacerlo utilizable? Pensé en cambiar el nombre pero realmente no sé las consecuencias y tampoco quiero romper nada en el CMS (todavía estoy aprendiendo Django y el CMS es muy nuevo para mí)

Mejor respuesta
Puedes hacerlo:

import importlib
module = importlib.import_module('.module', 'my-app')

Ver documentación para más información https://docs.python.org/3/library/importlib.html#importlib.import_module

Edición: este no es un problema específico de Django, es que en Python (y en la mayoría de los otros lenguajes de programación) ‘-‘ (guión) no puede usarse en nombres de variables (As ‘-‘ es el operador de resta).

Por favor indique la dirección original:python – Guión en la aplicación django - Código de registro