以下是我的 urls.py 管理页面和模板网址的显示方式:
urlpatterns = [
path('admin/', admin.site.urls),
path('lista/', views.entitats, name = 'lista_entitats')
]
以下是我的 admin.py 对实体列表和注册的调用方式:
class EntitatAdmin(admin.ModelAdmin):
list_display = ('codi', 'nom', 'adreça', 'cp', 'correu', 'inspector')
inlines = [DiaLliureDisposicioInline, VisitesDirectorCentreInline, ExitEscolarInline, ObresCentreInline, OfertaEstudisInline, NEE_alumnatInline, FormacioInline, ProjectesInline, ProfessorsInline, DespesesFuncionamentInline]
search_fields=('nom',)
list_per_page=5
admin.site.register(Entitat, EntitatAdmin)
在我的 views.py 中,这就是我要求的模板(以及我觉得我没有得到数据库信息的地方):
from entitats.models import Entitat
def entitats(request):
lista_entitats = Entitat.objects.all()
context = {'llista_entitats': lista_entitats}
return render(request, 'entitats.html', context)
最后是我的模板,我尝试显示实体列表:
{% if context.llista_entitats %}
<ul>
{% for question in objects_list %}
<li><a href="/admin/entitats/entitat/{{ entitat.id }}/">{{ question.question_text }}</a></li>
{% endfor %}
</ul>
{% else %}
<p>Ninguna entidad disponible.</p>
{% endif %}
对不起,如果它很潮,如果没有必要,我会删除,并提前谢谢。
答案 0 :(得分:0)
模板中不需要id's
语法来检查变量值,只需使用:
context.variable_name
而不是
{% if llista_entitats %}
此外,由于您的变量为{% if context.llista_entitats %}
,因此应为:
llista_entitats
注意我将{% for question in llista_entitats %}
<li><a href="/admin/entitats/entitat/{{ question.id }}/">{{ question.question_text }}</a></li>
{% endfor %}
替换为objects_list
,将llista_entitats
替换为entitat.id
。