何时使用 slug 字段和查询字符串

When to use slug field and query string

我是 django 网络开发的新手,我不知道什么时候使用 slug 字段以及什么时候在 url.Can 中使用查询字符串参数,有人建议我它们之间的实际区别。

使用 slug 使 url 保持简单和干净,从而易于记忆。考虑以下示例:

example.com/post/hello-world/

v/s

example.com/?post=hello-world

显然,第一个更干净。

但是查询字符串参数也有它们的用途。例如,当您搜索对象时。

example.com/search/?q=hello-world

或者需要传递多个参数时

example.com/search/?q=hello+world&lang=en&something=else

在 slug 相关的 django urls 中,您有一个 url 关联到一个视图。但是您不能将查询字符串参数传递给您的视图。

Ex -example.com/post/hello-world/ 不会将任何参数传递给您的视图函数。

但是如果您想将其他参数传递给您的视图,例如,

example.com/search/?q=hello-world

此处 q=hello-world 是传递给您的视图的查询字符串参数。 在您的视图函数中,您可以在 request.GET 中获取这些参数 所以你的观点函数是这样的

def helloworld():
    qParams = request.GET.get('q', '')
     ....
     ....

希望对您有所帮助。