2011-12-23 6 views
6

Używam Django tables2 pokazać niektóre dane na stronie, a teraz chcę zrobić łącze komórki do pewnego adresu URL, ale link url takich jak:linkcolumn o Django tables2

url (r '^ (? P \ w +)/(? P \ d +)/$', '', pool.views.pooldatestock name = "pool_date_stock"),

i czytam dokumenty Django tables2 , ale nie mogę znaleźć jakiegoś przykładu na ten temat.

tabele pokazują w adresie URL strony jest tak jak: http: //127.0.0.1: 8000/basen/20111222/

staram się pisać w moim tables.py:

class PoolTable(tables.Table): 
    number = tables.LinkColumn('pool.views.pooldatestock', args=[A('number')]) 
    date = tables.Column() 

i wtedy staram się pisać:

class PoolTable(tables.Table): 
    number=tables.LinkColumn('pool.views.pooldatestock', 
          args=[A('date')], 
          kwargs=A('number')]) 
    date = tables.Column() 

ale to błąd zbyt ...

ktoś może mi powiedzieć, jak rozwiązać ten problem? Lub powinienem utworzyć swój własny widok tabeli bez tabel Django.

Thanks.and Wesołych Świąt :)

Odpowiedz

5

Nie ma sensu dla parametru kwargs aby otrzymać listę, powinien otrzymać dict. Jednak ponieważ twój URL nie używa nazwanych grup, to i tak nie potrzebuje argumentów słów kluczowych. Wystarczy umieścić oba parametry URL w parametrze args:

class PoolTable(tables.Table): 
    number = tables.LinkColumn('pool.views.pooldatestock', 
           args=[A('date'), A('number')]) 
    date = tables.Column() 
+0

Thanks bradley.ayers, mam it.I nie rozumiem argumenty i kwargs before.:)Merry Boże Narodzenie – sword

+0

Dobrze 'LinkColumn' stara się postępować tak samo API jako funkcja 'django.core.urlresolvers.reverse()'. Spójrz na dokumentację, jeśli chcesz zrozumieć argumenty. –

+0

:) Dzięki, zrobię to. – sword

Powiązane problemy