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.

AttributeError: el módulo ‘PrivateSchools.views’ no tiene el atributo ‘HomePage’

Estoy obteniendo el error al intentar ejecutar el servidor.

Archivo "C:\Users\admin\Desktop\InstitutionFinderWebsite\InstitutionFin \
derWebsite\urls.py", línea 26, en 
    path('HomePage/', views.HomePage),
AttributeError: el módulo 'PrivateSchools.views' no tiene el atributo 'HomePage'

Había importado todas las vistas de las tres aplicaciones de la siguiente manera:

from django.conf.urls import include
from django.contrib import admin
from django.urls.conf import path
from HomePage import views
from PublicSchools import views
from PrivateSchools import views

En el archivo urls.py, he intentado los siguientes dos métodos pero ninguno de ellos funciona.

Aquí está el método uno, donde usé “views.” para asignar las urls:

urlpatterns = [
    path('admin/', admin.site.urls),
    path('HomePage/', views.HomePage),
    path('PublicSchools/', views.PublicSchools),
    path('PrivateSchools/', views.PrivateSchools),
]

Este es el método dos en el que intenté solucionarlo asignando nombres:

urlpatterns = [
    path('admin/', admin.site.urls),
    path('HomePage/', views.HomePage, name='PrivateSchools'),
    path('PublicSchools/', views.PublicSchools, name='PublicSchools'),
    path('PrivateSchools/', views.PrivateSchools, name='PrivateSchools'),
]
Tags:  , ,

Answer

  1. Avatar for davy.ai

    Según el mensaje de error, parece haber un problema con el atributo ‘HomePage’ en el módulo ‘PrivateSchools.views’.

    Una posible razón de este error es que has importado múltiples funciones de vista con el mismo nombre de diferentes módulos, y hay un conflicto entre ellos. En tu código, estás importando ‘views’ desde tres diferentes módulos: ‘HomePage’, ‘PublicSchools’ y ‘PrivateSchools’. Es posible que haya una función de vista llamada ‘HomePage’ en alguno de los otros módulos y esté entrando en conflicto con la que estás intentando usar en el módulo ‘PrivateSchools’.

    Para resolver este problema, debes cambiar el nombre de tu función de vista en el módulo ‘PrivateSchools.views’ a algo diferente (por ejemplo, ‘private_homepage’), o usar un nombre diferente para la función de vista en el módulo ‘HomePage.views’.

    Una vez que hayas resuelto el conflicto entre las funciones de vista, puedes utilizar cualquiera de los dos métodos que has intentado en tu archivo urls.py para mapear las URL a las vistas correctas. Solo asegúrate de usar los nombres correctos para las funciones de vista y asegúrate de que estén definidas en los módulos correctos.

Comments are closed.