I have view this tutorial https://www.youtube.com/watch?v=z6pXNf2SzQQ that explain how to send mail to reset password, I have follow all steps but I have the same error always: No module named 'my_app.views.django'; 'my_app.views' is not a package. For this case my_app = melomanos. I have all templates for Django reset password in my site templates folder.
The complete site root is:
The error that shows is: I know I have a missconfigured urls but I don't understand how I can configure correctly. Thanks for your cooperation.
ImportError at /resetpassword/
No module named 'melomanos.views.django'; 'melomanos.views' is not a package
Request Method: GET
Request URL: http://localhost/resetpassword/
Django Version: 1.8.2
Exception Type: ImportError
Exception Value:
No module named 'melomanos.views.django'; 'melomanos.views' is not a package
Exception Location: C:\Python34\lib\importlib\__init__.py in import_module, line 109
Python Executable: C:\Python34\python.exe
Python Version: 3.4.3
Python Path:['c:\\labsoft',
'C:\\Python34\\lib\\site-packages\\psycopg2-2.6-py3.4-win-amd64.egg',
'C:\\Windows\\SYSTEM32\\python34.zip',
'C:\\Python34\\DLLs',
'C:\\Python34\\lib',
'C:\\Python34',
'C:\\Python34\\lib\\site-packages',
'labsoft/melomanos',
'/melomanos']
here is the codes:
melomanos\urls.py
from django.conf.urls import patterns, url, include
from django.views.generic.base import TemplateView
from django.contrib import admin
from .views import Buscar_view
admin.autodiscover()
urlpatterns = patterns('melomanos.views',
url(r'^admin/', include(admin.site.urls)),
url(r'^$','trabajos_all_view',name='url_index'),
url(r'^register/$','register_view',name='vista_registro'),
url(r'^login/$','login_view',name='vista_login'),
url(r'^logout/$','logout_view',name='vista_logout'),
url(r'^perfil/$','registro_view',name='vista_perfil'),
url(r'^publicar/$','trabajomusical_view', name='vista_publicar'),
url(r'^trabajos/$','trabajos_view',name='vista_trabajos'),
url(r'^trabajo/(?P<id_trabajo>.*)/$','solo_trabajo_view', name='vista_trabajo'),
url(r'^buscar/$',Buscar_view.as_view(),name='vista_buscar'),
url('', include('django.contrib.auth.urls')),
url(r'^resetpassword/passwordsent/$', 'django.contrib.auth.views.password_reset_done', name='password_reset_done'),
url(r'^resetpassword/$', 'django.contrib.auth.views.password_reset', name="reset_password"),
url(r'^reset/(?P<uidb36>[0-9A-Za-z]+)-(?P<token>,+)/$', 'django.contrib.auth.views.password_reset_confirm'),
url(r'^reset/done/$', 'django.contrib.auth.views.password_reset_complete'),
)
The link at the login page:
<p>Forgot your password?<a href="/resetpassword/">Reset Password</a></p>
settings.py
INSTALLED_APPS = (
'django.contrib.admin',
'django.contrib.auth',
'django.contrib.contenttypes',
'django.contrib.sessions',
'django.contrib.messages',
'django.contrib.staticfiles',
'melomanos',
)
On melomanos\urls.py
you are using url prefix.
urlpatterns = patterns('melomanos.views',
url(r'^resetpassword/$', 'django.contrib.auth.views.password_reset', name="reset_password"),
)
So /resetpassword/
is calling melomanos.views.django.contrib.auth.views.password_reset
instead of django.contrib.auth.views.password_reset
For reset password view removing the prefix will solve this issue.
You may remove resetpassword
from prefixed block and later add it without prefix like
urlpatterns += patterns('',
url(r'^resetpassword/$', 'django.contrib.auth.views.password_reset', name="reset_password"),
)
If you love us? You can donate to us via Paypal or buy me a coffee so we can maintain and grow! Thank you!
Donate Us With