【问题标题】:Django how to use the slug in URL as a variableDjango如何使用URL中的slug作为变量
【发布时间】:2018-02-12 09:42:47
【问题描述】:

我想将 URL 中的 slug 用作我的 API 的变量。所以首先我需要把 slug 放在看起来像这样的 urls.py 中。

url(r'^use/(?P<slug>[\w-]+)/$', view_function, name="api")

然后我需要在 view.py 中包含 slug,它看起来像这样:

def urlextractor(request, slug):
    if request.method == 'POST':
        serializer = Serializer(data=slug)
        # do something with slug

问题是我得到了代码 404。你能给我一些例子或参考资料吗?

【问题讨论】:

标签: python django django-rest-framework slug


【解决方案1】:

已删除评论的用户已回答了该问题。他说,为了让我的模块将 URL 作为变量,我只需要将 urls.py 更改为正则表达式:

url(r'^use/(?P[A-Za-z]+)/$', view_function, name="api")

【讨论】:

    【解决方案2】:

    在你的情况下:

    url(r'^use/(?P<slug>[\w-]+)/$', view_function, name="api")
    

    如果您没有在 projets urls.py 中添加 api,您的 url 应该是 "127.0.0.1:8000/use/variable"

    def urlextractor(request, slug):
        # slug = variable in your url
    

    【讨论】:

    • 我认为是:127.0.0.1:8000/use/api/&lt;someslug&gt;/
    猜你喜欢
    • 1970-01-01
    • 2018-03-30
    • 2021-04-28
    • 2020-04-19
    • 1970-01-01
    • 1970-01-01
    • 2014-01-13
    • 2020-11-24
    • 1970-01-01
    相关资源
    最近更新 更多