2012-01-19 3 views
11

Вопрос довольно прост.Django Class Generated Views URL Переменная Передача

Скажем, у меня есть URL-конфиг с линии:

url(r'^models/(?P<model_group_id>[0-9]+)/(?P<page>\d+)/$', 'Group'), 

И я хочу, чтобы получить доступ к model_group_id переменной внутри

class Group(ListView) 

View.

На простых взглядов, я бы просто изменить Group описание на:

class Group(ListView, model_group_id): 

И это будет работать. Теперь он говорит, что model_group_id не определен. Итак, как передать переменные из регулярного выражения url в класс?

ответ

22

Вы можете получить доступ к позиционным аргументам в self.args и аргументам, основанным на имени, в self.kwargs.

class Group(ListView): 

    def get_queryset(self): 
     model_group_id=self.kwargs['model_group_id'] 
     ... 

См. the docs для получения дополнительной информации.

Смежные вопросы