Django url传递尽可能多的参数,并用/分隔

问题描述

如何定义URL模式,以便可以根据需要传递尽可能多的参数给URL?我确实研究了文档和其他stackoverflow问题,但没有找到类似的东西。我需要使用它作为电子商务网站的过滤器。

我想实现以下目标:

lazyload

在我的视图函数中,我将这样定义它:

urlpatterns = [
    path('test/<str:var1>-<str:var2>/<str:var3>-<str:var4>/...',views.test,name='test'),]

解决方法

您是否考虑过使用#include<stdio.h> int main() { char op; double n1,n2; printf("enter first number"); scanf("%f",&n1); printf("enter second number"); scanf("%f",&n2); printf("enter operation"); scanf("%c",&op); if (op=="+"){ printf("the sum = %f",n1+n2); } else if (op=="-"){ printf("the difference= %f",a-b); } else if (op=="*"){ printf("the product= %f",a*b); } else if (op=="/"){ printf("the quotient= %f",a/b); } return 0; }

query_params

URL:/ test /?filter = asd ....

然后通过视图中的请求访问它:

path('test',views.test,name='test')

看看是否可以解决您的问题:)

,

我认为这是建立路径的错误方法,如果您想将其用作过滤器而不是在路径中使用,则应使用url参数作为获取请求。

但是如果您坚持要这样做,可以使用Regular expressions 're_path'

# urls.py

from django.urls import path,re_path
from django.conf.urls import url
from myapp import views

urlpatterns = [
    re_path(r'^test/(?P<path>.*)$',name='test'),# or use url instead it's same thing
    url(r'^test/(?P<path>.*)$',]

相关问答

Selenium Web驱动程序和Java。元素在(x,y)点处不可单击。其...
Python-如何使用点“。” 访问字典成员?
Java 字符串是不可变的。到底是什么意思?
Java中的“ final”关键字如何工作?(我仍然可以修改对象。...
“loop:”在Java代码中。这是什么,为什么要编译?
java.lang.ClassNotFoundException:sun.jdbc.odbc.JdbcOdbc...