2016-06-14 125 views
0

Django的模板不显示模型数据,显示空白页 ......看一看吧:Django的模板不显示模型数据,显示空白页

models.py

class appointment(models.Model): 

patient_name1= models.ForeignKey('identity') 
appoint_date= models.DateTimeField('Appoinment time and date') 
patient_info= models.TextField() 
fees= models.CharField('Fees',max_length=100,blank=True) 

class Meta: 
    verbose_name = 'Appointment Detail' 
    verbose_name_plural = 'Appoinment Details' 
    ordering = ['appoint_date'] 

def __str__(self): 
    return '%s (%s)' % (self. patient_name1, self.appoint_date) 

views.py

from django.shortcuts import render 
from .models import identity, appointment 


def index(request): 
    return render(request, 'appoint/index.html') 

def appointment_list(request): 
    Appointments = appointment.objects.all() 
    context = {'Appointments': Appointments} 
    return render(request, 'appoint/appointment_list.html', context) 

appointment_list.html

<p>{{Appointments.patient_name1}}</p> 

urls.py

from django.conf.urls import url 
from . import views 

urlpatterns = [ 
url(r'^$', views.index, name='index'), 
url(r'^appointment_list/$', views.appointment_list, name='appointment_list'), 
url(r'^aboutme/$', views.aboutme, name='about_us'), 
url(r'^contact/$', views.contact, name='contact_us'), 
url(r'^apply_appoint/$', views.apply_appoint, name='apply_appoint'), 
] 

请帮助我,我是新来的Django 1.9

回答

0

你需要遍历查询集,然后访问对象的属性:

<p> 
    {% for appointment in Appointments %} 
     {{ appointment.patient_name1 }} 
    {% endfor %} 
</p> 

Appointments是一个QuerySet这是Appointment类的实例列表。

你需要用大写字母顺序命名你的类。通常情况下,对象是小写的,类名以大写字母开头。

+0

明白了.......我会在类名的改善.....感谢您的建议 –

0

Appointments是模型对象的列表,你需要循环它们在模板 这样的:

<p> 
{% for object in Appointments %} 
    {{ object.patient_name1 }} , {{ object.appoint_date }} 
{% endfor %} 
</p> 
+0

明白了......谢谢 –

+0

@PalashDusane不客气 –