Dear Experts, Please can you help me with this issue. I spent a lot of time on this but not able to solve this basic issue. My need is as below.
Sincere apologies if I am asking for too much in that you have to read this whole code. Please try and help me. I have a project called ella that has to apps called elah & adm1n elah app has a index.html that has a link to login.html. Once the user enters the right credentials, I check his role and either take him to adm1n app / dashboard html or take him to a 3rd app called employee (yet to build) The issue I have is after the login is validated, the adm1n/dashboard.html is rendered but the url does not change and remains http://127.0.0.1:8000/elah/login/. This is from where the new template is called. Also i put a hyperlink to render another html in the adm1n app. On click of this app, the login html is rendered. What am I doing wrong here? *ella* from django.conf.urls import url, include from django.contrib import admin from django.views.generic import RedirectView urlpatterns = [ url(r'^admin/', admin.site.urls), url(r'^elah/', include('elah.urls')), url(r'^adm1n/', include('adm1n.urls')), url(r'^$', RedirectView.as_view(url='/elah/', permanent=True)), ] *elah.urls* from django.conf.urls import url from elah import views app_name = 'elah' urlpatterns = [ url(r'^$', views.elah, name='elah'), url(r'^login/', views.login, name='login'), url(r'^forgotpassword/', views.forgotpassword, name='forgotpassword'), url(r'^resetpassword/', views.resetpassword, name='resetpassword'), ] *elah.views* from django.shortcuts import render from django.contrib import messages from elah.models import users from django.core.mail import send_mail from django.template import Context from django.template.loader import get_template from django.core.mail import EmailMessage from django.core.mail import EmailMultiAlternatives from django.template.loader import render_to_string from django.utils.html import strip_tags def elah(request): return render(request, 'elah/index.html') def login(request): lReturnMessage, lValid, lEmailIdE = '', '', '' if request.method == 'POST': lEmailId = request.POST.get("emailid") lPassword = request.POST.get("password") lReturnMessage = 'You Are A Valid User' lValid = 'Y' try: tFetchData = users.objects.get(emailid = lEmailId) except users.DoesNotExist: lReturnMessage = str(lEmailId) + ' is not a valid Email ID. Re-enter the correct Email ID. Contact your Administrator to check if your account has been setup.' lValid = 'N' lEmailIdE = lEmailId if lValid == 'Y': if lPassword != tFetchData.password: lReturnMessage = 'Incorrect Password. Enter the correct password. Use Forgot Password if you do not remember your password.' lValid = 'N' lEmailIdE = lEmailId * if lValid == 'Y':* * return render(request, 'adm1n/dashboard.html')* return render(request, 'elah/login.html', {'lReturnMessage': lReturnMessage, 'lValid': lValid, 'lEmailIdE': lEmailIdE}) def forgotpassword(request): lReturnMessage, lValid, lEmailIdE = '', '', '' if request.method == 'POST': lEmailId = request.POST.get("emailid") lReturnMessage = 'Your Login credentials have been emailed to ' + lEmailId + ' ... Click on Return To Login and use the credential sent to login' lValid = 'Y' try: tFetchData = users.objects.get(emailid = lEmailId) except users.DoesNotExist: lReturnMessage = lEmailId + ' is not a valid Email ID. Re-enter the correct Email ID. Contact your Administrator to check if your account has been setup.' lValid = 'N' lEmailIdE = lEmailId if lValid == 'Y': subject = "I am an HTML email" to = ['yeddu.pra...@outlook.com'] from_email = '' message = render_to_string('elah/emailalert.html').strip() msg = EmailMultiAlternatives(subject, message, to=to, from_email=from_email) msg.content_subtype = 'html' msg.send() return render(request, 'elah/forgotpassword.html', {'lReturnMessage': lReturnMessage, 'lValid': lValid, 'lEmailIdE': lEmailIdE}) def resetpassword(request): lReturnMessage, lValid, lEmailIdE, lOldPasswordE = '', '', '', '' if request.method == 'POST': lEmailId = request.POST.get("emailid") lOldPassword = request.POST.get("oldpassword") lNewPassword = request.POST.get("newpassword") lReenterPassowrd = request.POST.get("reenterpassowrd") lReturnMessage = 'Your password has been updated and emailed to ' + lEmailId + ' ... Click on Return To Login and use the credential sent to login' lValid = 'Y' try: tFetchData = users.objects.get(emailid = lEmailId) except users.DoesNotExist: lReturnMessage = lEmailId + ' is not a valid Email ID. Re-enter the correct Email ID. Contact your Administrator to check if your account has been setup.' lValid = 'N' lEmailIdE = lEmailId if lValid == 'Y': if lOldPassword != tFetchData.password: lReturnMessage = 'The Current Password you entered is not valid. Re-enter the right password.' lValid = 'N' lEmailIdE = lEmailId if lValid == 'Y': if lNewPassword != lReenterPassowrd: lReturnMessage = 'Your New Password and Confirmation Password Do not Match.' lValid = 'N' lEmailIdE = lEmailId lOldPasswordE = lOldPassword return render(request, 'elah/resetpassword.html', {'lReturnMessage': lReturnMessage, 'lValid': lValid, 'lEmailIdE': lEmailIdE, 'lOldPasswordE': lOldPasswordE}) *adm1n.urls* from django.conf.urls import url from adm1n import views app_name = 'adm1n' urlpatterns = [ url(r'^dashboard', views.dashboard, name='dashboard'), url(r'^dashboard1', views.dashboard1, name='dashboard1'), ] adm1n.views from django.shortcuts import render def dashboard(request): return render(request, 'adm1n/dashboard.html') def dashboard1(request): return render(request, 'adm1n/dashboard1.html') -- You received this message because you are subscribed to the Google Groups "Django users" group. To unsubscribe from this group and stop receiving emails from it, send an email to django-users+unsubscr...@googlegroups.com. To post to this group, send email to django-users@googlegroups.com. Visit this group at https://groups.google.com/group/django-users. To view this discussion on the web visit https://groups.google.com/d/msgid/django-users/404a4124-4855-44bd-ac9a-72798696a21c%40googlegroups.com. For more options, visit https://groups.google.com/d/optout.