create members/templates/main.html
{% extends 'master.html' %}
{% block title %}
Welcome to Main Page
{% endblock %}
{% block content %}
<h1>Main Page</h1>
<p><a href="members/">Display all members</a></p>
{% endblock %}
update members/views.py
add main to view to display the main.html
from django.shortcuts import render
from django.http import HttpResponse
from django.template import loader
from .models import Member
def members(request):
members = Member.objects.all().values()
template = loader.get_template('members.html')
return HttpResponse(template.render({'members': members}))
def details(request, id):
member = Member.objects.get(id=id)
template = loader.get_template('details.html')
return HttpResponse(template.render({'member': member}))
def main(request):
template = loader.get_template('main.html')
return HttpResponse(template.render())
update members/urls.py that will allow the path 127.0.0.1:8000 to redirect to the main.html page
from django.urls import path
from . import views
urlpatterns = [
path('', views.main, name='main'),
path('members/', views.members, name='members'),
path('members/details/<int:id>/', views.details, name='details'),
]
add redirect link to main page from the members/templates/members.html
{% extends 'master.html' %}
{% block title %}
All Members
{% endblock %}
{% block content %}
<p><a href="/">Go Main Page</a></p>
<h1>All Members</h1>
<ul>
{% for member in members %}
<li><a href="details/{{ member.id }}">{{ member.firstname }} {{ member.lastname }}</a></li>
{% endfor %}
</ul>
{% endblock %}
create a file members/templates/404.html
<!DOCTYPE html>
<html>
<head>
<title>Error Page</title>
</head
<body>
<h1>404 - Page Not Found</h1>
<p>The page you are looking for does not exist.</p>
<p><a href="/">Return to Main Page</a></p>
</body>
</html>
in order to enable this feature go to settings.py and change
DEBUG = False
ALLOWED_HOSTS = ['*']