Я работал над аналогичным проектом, и вот как это можно сделать
в Views.py
from django.shortcuts import *
from .models import *
from .forms import *
def viewstudents(request):
all_info = DataStudent.objects.all()
context={'all_info' :all_info}
return render(request, 'accounts/Students/viewstudents.html', context)
в ваших URL.py
from django.urls import path
from django.conf.urls import url, include
from . import views
urlpatterns=[
url(r'^viewstudents', views.viewstudents, name="viewstudents")
]
в вашем viewstudents.html
{% extends 'base.html' %}
{% block body %}
<div class="container" style="margin-left: 200px;font-size: 20px; padding: 0px 10px;">
<br><h4>Manage Students</h4>
<nav class="nav navbar-expand" style="float:left">
<ul class="navbar-nav mr-auto">
<li class="nav-item">
<a class="nav-link" href="#"><button class="btn btn-default">List of Students</button></a>
</li>
<li class="nav-item">
<a class="nav-link" href="{% url 'addstudent' %}"><button class="btn btn-success">Add Students</button></a>
</li>
</ul>
</nav>
<br>
<div class="container" style="margin-left:2px; font-size:15px; padding:3px">
<table class="table table-hover" border="2">
<thead class="table-success">
<tr>
<td>id</td>
<td>Photo</td>
<td>Name</td>
<td>Class</td>
<td>Stream</td>
<td>Admision No</td>
<td>Action</td>
</tr>
</thead>
<tbody>
{% if all_info %}
{% for item in all_info %}
<tr>
<td>{{ item.id}}</td>
<td>{% if item.Student_Photo %}<img src="{{ item.Student_Photo.url}}" width="50">{% endif %}</td>
<td>{{ item.name}}</td>
<td>{{ item.Class}}</td>
<td>{{ item.stream}}</td>
<td>{{ item.admission_no}}</td>
<link href="https://maxcdn.bootstrapcdn.com/bootstrap/3.3.0/css/bootstrap.min.css" rel="stylesheet" id="bootstrap-css">
<td><a class="btn btn-primary a-btn-slide-text" href="{% url 'singlestudentdetails' pk=item.id %}"><span class="glyphicon glyphicon-eye-open" aria-hidden="true"></span>
<span><strong>View</strong></span></a>
<form id='delete-student' method="POST" action="{% url 'deletestudent' pk=item.id %}">
{% csrf_token %}
<a class="btn btn-danger a-btn-slide-text" href="{% url 'deletestudent' pk=item.id %}"><span class="glyphicon glyphicon-remove" aria-hidden="true"></span>
<span><strong>Delete</strong></span> </a>
</form>
</td>
{% endfor %}
</tr>
{% endif %}
</tbody>
</table>
</div>
</div>
<script type="text/javascript">
window.mytest = function()
{
var isValid = confirm('Are you sure ?');
if (!isValid) { event.preventDefault();
alert("It wont delete. Yay!");}}
</script>
{% endblock %}
и вот мой model.py
from django.db import models
from django.utils import timezone
from datetime import datetime
class DataStudent(models.Model):
sex = (('female','female'), ('male','male'))
reli = (('moslem','moslem'), ('Christian','Christian'),('Others','Others'))
relation = (('Brother','Brother'), ('Sister','Sister'),('Mother','Mother'),
('Father','Father'), ('Uncle','Uncle'),('Auntie','Auntie'))
school = models.ForeignKey(School, on_delete=models.PROTECT, blank=True, null=True)
religion = models.CharField(max_length=130, choices=reli, blank=False)
name = models.CharField(max_length=100, default="Student_name")
username = models.CharField(max_length=100)
gender = models.CharField(max_length=130, choices=sex, blank=False)
Class = models.ForeignKey(Classinformation, on_delete=models.PROTECT, blank=True, null=True)
stream = models.ForeignKey(Sectioninformation, on_delete=models.PROTECT, blank=True, null=True)
admission_no = models.CharField(max_length=130)
def __str__(self):
return self.name
Счастливое кодирование, мой приятель, разработчик