【问题标题】:django: access url name pattern in cbvdjango:在 cbv 中访问 url 名称模式
【发布时间】:2013-08-20 11:46:56
【问题描述】:

我想将多个 url 映射到同一个视图。

url(r'^foo/', BaseView.as_view(), name='foo'),
url(r'^bar/', BaseView.as_view(), name='bar'),
url(r'^buzz/', BaseView.as_view(), name='buzz'),

在我的基于类的视图中,我是否可以访问名称参数?我知道可以在as_view() 中指定它。但是有没有办法绕过这些额外的样板代码?

【问题讨论】:

    标签: django django-views django-urls


    【解决方案1】:

    怎么样:

    url(r'^/(?P<name>[-\w]+)/$', BaseView.as_view())
    

    然后你可以从 BaseView 中获取名称:

    name = self.kwargs['name']
    

    【讨论】:

    • 那么模板 url 解析器将不会被设置。除非我在视图中以某种方式这样做。
    • 我不确定为什么不使用 RE 设置解析器,但否则它们会。你确定吗?
    猜你喜欢
    • 2013-11-25
    • 2015-03-04
    • 2018-10-03
    • 2014-08-20
    • 2016-04-14
    • 2019-12-07
    • 1970-01-01
    • 2011-11-17
    • 1970-01-01
    相关资源
    最近更新 更多