何时使用 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', '')
....
....
希望对您有所帮助。
我是 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', '')
....
....
希望对您有所帮助。