2015-11-05 49 views
0

我使用指向同一個視圖「,導致有時我送2倍的值的URL和其他只是一個倍數的網址,問題是在視圖中,當我嘗試捕獲值時,我並不在url中的變量名稱上,我在url中使用seguros和fac作爲變量,但是當捕獲視圖中的值時,它始終在相同的變量事實中捕捉它,我需要捕捉它們在diferente變量,因爲在我發送它們的模板中,我需要做一個if,但是我不能。有人能告訴我爲什麼會發生這種情況嗎?我能做些什麼,因此seguro在變量seguro中的價值以及我在表面上看到的fac的價值。這是我的代碼。使用指向了同樣的觀點倍數的網址,無法趕上從URL中的變量視圖

Template.html

{% if facturas %} 
    <a style="text-align: center" href="{% url 'seguimientoadministrativourls:crearseguimientoadministrativo' id=post.id_paciente.pk fac=facturas %}"><span class="glyphicon glyphicon-pushpin"></span> </a> 
{% elif seguros %} 
    <a style="text-align: center" href="{% url 'seguimientoadministrativourls:crearseguimientoadministrativo' id=post.id_paciente.pk seguros=seguros %}"><span class="glyphicon glyphicon-pushpin"></span> 
</a> 
{% else %} 
    <a style="text-align: center" href="{% url 'seguimientoadministrativourls:crearseguimientoadministrativo' id=post.id_paciente.pk %}"><span class="glyphicon glyphicon-pushpin"></span> 
</a> 
{%endif%} 

urls.py

url(r'^crearseguimientoadministrativo/(?P<id>\d+)$', 
    permission_required(
     'seguimientoadministrativo.add_seguimientoadministrativobitacora', 
     login_url='/sin_acceso')(CrearSeguimientoAdministrativo.as_view()), 
    name='crearseguimientoadministrativo'), 

url(r'^crearseguimientoadministrativo/(?P<id>\d+)/(?P<fac>\S+)$', 
    permission_required(
     'seguimientoadministrativo.add_seguimientoadministrativobitacora', 
     login_url='/sin_acceso')(CrearSeguimientoAdministrativo.as_view()), 
    name='crearseguimientoadministrativo'), 

url(r'^crearseguimientoadministrativo/(?P<id>\d+)/(?P<seguros>\S+)$', 
    permission_required(
     'seguimientoadministrativo.add_seguimientoadministrativobitacora', 
     login_url='/sin_acceso')(CrearSeguimientoAdministrativo.as_view()), 
    name='crearseguimientoadministrativo'), 

views.py

class CrearSeguimientoAdministrativo(ListView): 
    template_name = 'crearseguimientoAdmin.html' 
    model = SeguimientoAdministrativoBitacora 
    paginate_by = 10 

    def get_queryset(self, **kwargs): 
     id = self.kwargs.get('id') 
     query = DatosPaciente.objects.filter(pk=id) 
     return query 

    def get_context_data(self, **kwargs): 
     context = super(
      CrearSeguimientoAdministrativo, self).get_context_data(**kwargs) 
     context['seguimiento'] = SeguimientoAdministrativoBitacora.objects.filter(
     id_paciente=paciente) 
     context['factura'] = self.kwargs.get('fac') 
     context['seguro'] = self.kwargs.get('seguros') 
     return context 

回答

1

如何在URL解析假設你的URL之間的區別?它們都是「crearseguimientoadministrativo/numbers/string」的形式;沒有辦法知道哪個字符串表示「fac」,哪個字符表示「seguros」。你需要添加一些其他的區分方式;也許與.../<id>/fac/<fac>/.../<id>/seguros/<seguros>/

+0

謝謝!你的答案完成了這項工作;) – GioBot

相關問題