我在相关的模型类上遇到了麻烦。 我有一个模型是这样的:
class Cine(models.Model):
nombre = models.CharField(max_length=150)
ciudad = models.ForeignKey(Ciudad, db_column='ciudad')
slug = models.SlugField(unique=True, blank=True)
...
class Funcion(models.Model):
idpelicula = models.ForeignKey(Pelicula, db_column='idpelicula')
idcine = models.ForeignKey(Cine, db_column='idcine', null=True)
hora = models.TimeField(null=True)
...
我的观点如下:
^{pr2}$网址是:
#Queryset containing all the Cine objects
cine_info = {
'queryset': Cine.objects.all(),
'template_name': 'cines-all.html',
}
url(r'^complejos/$', list_detail.object_list, cine_info),
url(r'^complejos/(?P<cineslug>.*)/$', views.CineDetail),
url(r'^complejos/(?P<cineslug>.*)/funciones/(?P<id>.*)/$', views.FuncionesByCine),
url(r'^funciones/$', views.FuncionesAll),
url(r'^funciones/(?P<id>.*)/$', views.FuncionesByCine),
这样,当我从url调用“cine”时,它将提供与函数“cine”关联的所需“functiones”:本地主机:8000/functiones/1。在
现在,我要做的是从一个显示单个电影院(“cine”)的模板调用这个视图,并使用这个视图来显示该“cine”上的所有放映时间(“functiones”)。在
我尝试使用相同的视图,但使用不同的url:
url(r'^complejos/(?P<cineslug>.*)/funciones/(?P<id>.*)/$', views.FuncionesByCine),
模板调用如下所示:
{% extends 'cines-menu.html' %}
{% block content %}
<div class="cine">
<p>Nombre: <a href="funciones/{{cine.id}}">{{cine}}</a></p>
<p>Ciudad:{{cine.ciudad}}</p>
<p>Direccion:{{cine.direccion}}</p>
{% endblock %}
这目前不起作用。有什么想法吗? 谢谢!在
编辑:我添加了其他视图和url(也是使用cineslug的视图和url)
具体什么不起作用?你收到了什么错误?在
我看到一个您正试图将
cineslug
作为参数传递给您的view函数。在使用named groups时,它们作为位置参数传递给视图。在
def FuncionesByCine(request, id):
应该是
def FuncionesByCine(request, cineslug, id):
但我相信这会破坏你原来的网址
您可以将函数定义更改为
def FuncionesByCine(request, cineslug, id):
并传入
cineslug
的默认值url(r'^funciones/(?P<id>.*)/$', views.FuncionesByCine, {'cineslug': None})
您可以通过slug来检索
Funcion
,如下所示:funciones = Funcion.objects.filter(idcine__slug={{ your slug value here }})
相关问题 更多 >
编程相关推荐