Я пытаюсь отобразить некоторые объекты из Django.Когда я использую администратора, мои объекты создаются, но когда я пытаюсь отобразить это невозможно.
Я пытался сделать рендер, но когда я инициализирую экран, он никогда не вызывается, затем я пытался сделать это с помощью кнопки GET, теперь функция вызывается, но когда приходит к alumnos = Alumno.objects.all () throws 'function' object не имеет атрибута 'objects'.
models.py
class Alumno(models.Model):
dni = models.CharField(max_length=9,primary_key=True)
nombre = models.CharField(max_length=100)
apellido1 = models.CharField('Primer apellido',max_length=50)
apellido2 = models.CharField('Segundo apellido',max_length=50)
email = models.EmailField("Correo electronico",null=True)
repetidor = models.BooleanField()
curs = models.ManyToManyField(Curso, blank=True, related_name="Historico_de_cursos")
Nivel = models.ManyToManyField('Nivel', through = 'Completado',through_fields=('Alumno','Nivel'))
Practica = models.ManyToManyField('Practica', through = 'Nota',through_fields=('Alumno','Practica'))
Curso = models.ManyToManyField('Curso',through = 'Curso_alumno',through_fields=('Alumno','Curso'))
objects = models.Manager()
def __str__(self):
return self.dni
class Meta:
db_table = "Alumno"
verbose_name = 'Alumno'
verbose_name_plural = 'Alumnos'
unique_together = ("nombre", "apellido1", "apellido2")
view.py
def mostrar_alumnos(request):
alumnos = Alumno.objects.all()
return render(request, 'mostrar_alumnos.html', {'alumnos': alumnos}
mostrar_alumnos.html
{% if alumnos %}
<ul>
{% for alumno in alumnos %}
<td>{{ alumno.dni }}</td>
<td>{{ alumno.nombre }}</td>
<td>{{ alumno.apellido1 }}</td>
<td>
<a class="btn btn-secondary" href="{% url 'actualizar_alumno' alumno.dni %}"> Editar</a>
<a class="btn btn-danger" href="{% url 'eliminar_alumno' alumno.dni %}"> Esborrar</a> </td>
{% endfor %}
</ul>
{% else %}
<p>No hay alumnos disponibles.</p>
{% endif %}
url.py
url(r'^mostrar_alumnos/$', TemplateView.as_view(template_name='mostrar_alumnos.html'),name='mostrar_alumnos'),
url(r'^mostrar_alumnos/$', views.mostrar_alumnos,name='mostrar_alumnos'),
url(r'^mostrar_alumnos2/$', views.mostrar_alumnos2,name='mostrar_alumnos2')