小编Ken*_*dna的帖子

如何使用 path() 在 Django 2.0 中将浮点数作为参数发送?

我开发了一个带有参数的Python脚本。它具有根据收到的参数执行不同操作的函数。现在我尝试通过 API 传递该参数或参数。我正在使用path()Django 2.0 的新功能(具体来说,这是我正在使用的版本:2.2.9) 在 Django 中,在 url 中传递浮动的方式是什么?它适用于整数,但不适用于浮点数。

传递浮动的最佳方法是什么?例如,您是否转换为十六进制?

使用 GET 指向 API 并触发任务的示例:

不起作用: http://xxxx:8000/proveedores/api/pruebascelery/buy/0/1.1287 (最后一个参数是浮点数)

适用于整数: http://xxxx:8000/proveedores/api/pruebascelery/buy/0/2

姜戈:(urls.py)

path('pruebascelery/<slug:post_id>/<slug:post_id2>/<slug:post_id3>', lanzador_task_start)
Run Code Online (Sandbox Code Playgroud)

姜戈:(views.py)

def lanzador_task_start(request, post_id, post_id2, post_id3):
    comando = "python /home/developer/venvpruebas/recibirparametros.py " + str(post_id) +str(" ")+ 
str(post_id2)+str(" ")+ str(post_id3)
    lanzar.delay(comando)
    return HttpResponse('<h1>Done</h1')
Run Code Online (Sandbox Code Playgroud)

蟒蛇方面:

#!/usr/bin/env python
# -*- coding: utf-8 -*-
import sys
import struct


def RecibirParametros(recibir_todo):

    print("Received: ", recibir_todo)

if __name__ == "__main__":
    recibir_todo = sys.argv[1], sys.argv[2], sys.argv[3]
    #--------------------------------------------------------------
    #[1] test1
    #[2] test2
    #[3] test3 …
Run Code Online (Sandbox Code Playgroud)

python django url celery

5
推荐指数
1
解决办法
2423
查看次数

标签 统计

celery ×1

django ×1

python ×1

url ×1