Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/python/323.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Python Django url参数传递_Python_Django_Api_Parameter Passing_Url Parameters - Fatal编程技术网

Python Django url参数传递

Python Django url参数传递,python,django,api,parameter-passing,url-parameters,Python,Django,Api,Parameter Passing,Url Parameters,我甚至不知道这个问题属于Django的哪一类,我对Django很陌生。我尝试过寻找Django post请求、参数传递,甚至在Django API下进行了检查,但没有找到我要找的内容。我试图做的是为我的客户机创建一个API,但它必须在Django中完成。如果我在.Net中这样做,我可以使用HTTPPOST、HTTPGET和web服务,但我完全不确定在Django中如何做到这一点。我的客户想要做的是能够看到: 在带有日期和id参数的url中输入用户名和密码,并能够根据输入的内容查看可用房间 输入用

我甚至不知道这个问题属于Django的哪一类,我对Django很陌生。我尝试过寻找Django post请求、参数传递,甚至在Django API下进行了检查,但没有找到我要找的内容。我试图做的是为我的客户机创建一个API,但它必须在Django中完成。如果我在.Net中这样做,我可以使用HTTPPOST、HTTPGET和web服务,但我完全不确定在Django中如何做到这一点。我的客户想要做的是能够看到:

  • 在带有日期和id参数的url中输入用户名和密码,并能够根据输入的内容查看可用房间
  • 输入用户名、密码、日期和房间代码,以便能够预订房间

  • 不需要接口,只需要通过url传递简单的参数。对于Django,这可能吗?如果可能,请有人告诉我正确的方向

    你要找的是

    下面是来自上述链接的代码片段

    # urls.py
    from django.conf.urls import patterns, url
    
    urlpatterns = patterns('blog.views',
        url(r'^blog/(?P<year>\d{4})/$', 'year_archive', {'foo': 'bar'}),
    )
    
    # views.py
    def year_archive(request, year, foo=None):
        # view method definition
    
    #url.py
    从django.conf.url导入模式,url
    urlpatterns=patterns('blog.views',
    url(r'^blog/(?P\d{4})/$,'year_archive',{'foo':'bar'}),
    )
    #views.py
    def year_存档(请求、年份、foo=None):
    #视图方法定义
    
    从Django 1.10开始,模式从Django中删除

    下面是2019年Django 2.2解决方案

    看起来re_path是当前推荐的通过正则表达式捕获参数的工具:

    #url.py
    从django.url导入re_路径
    从myapp导入视图
    URL模式=[
    re_path(r'^blog/(?P\d{4})/$,'year_archive',{'foo':'bar'}),
    ]
    #views.py
    def year_存档(请求、年份、foo=None):
    #视图方法定义
    
    我真的不明白。您可以从url传递年份参数。但您也试图传递一个值为
    'bar'
    的foo参数,对吗?您是对的。我在方法签名中缺少foo参数。我会加进去的。
    # urls.py
    from django.urls import re_path
    
    from myapp import views
    
    urlpatterns = [
        re_path(r'^blog/(?P<year>\d{4})/$', 'year_archive', {'foo': 'bar'}),
    ]
    
    # views.py
    def year_archive(request, year, foo=None):
        # view method definition