如何在django中设置json中的参数?

如何在django中设置json中的参数?,django,Django,我是dJango和javascript的新手 我试图将变量传递到函数中的参数中,以便使用变量调用函数 下面是代码 view.py url.py 我想做的是将变量c传递到d3.json中,以便根据变量c使用函数plot_graph。 然而,下面的代码给了我一个错误 找不到具有关键字参数“{column':}”的“plot_graph”的反转。尝试了1种模式:['index/api/plot\u graph/?P[\\w-]+'] 如何解决这个问题?这里的问题是c是一个js变量,上下文变量c不存在

我是dJango和javascript的新手

我试图将变量传递到函数中的参数中,以便使用变量调用函数

下面是代码

view.py

url.py

我想做的是将变量c传递到d3.json中,以便根据变量c使用函数plot_graph。 然而,下面的代码给了我一个错误 找不到具有关键字参数“{column':}”的“plot_graph”的反转。尝试了1种模式:['index/api/plot\u graph/?P[\\w-]+']

如何解决这个问题?

这里的问题是c是一个js变量,上下文变量c不存在,url标记是django模板标记,因此它希望上下文变量是基本类型,如str、int等

尝试:

您可以在其他标记中使用上下文变量和过滤器

另一方面


您必须确保在列_json中有您期望的内容,或者在应用安全过滤器后是否有一些有用的内容。

您可以这样向api url添加/$:urlr'^api/plot\u graph/?p[\w-]+/$',views.plot\u graph,name='plot\u graph',吗,。另外,只需将您的值c添加到url参数,而不是column=c,例如:{%url plot_graph c%}@ReemaParakh它对我的情况不起作用。我尝试了,但它给出了以下错误。找不到具有关键字参数“{column':}”的“plot_graph”的反转。尝试了两种模式:['index/api/plot\u-graph/?P[0-9]+$,'index/api/plot\u-graph/?P[\\w-]+/$”]您确定列中有您期望的内容,或者应用安全筛选器后是否有一些内容?是。我在列_json中有内容。错误消息更改如下。找不到具有关键字参数“{'column':”[c4,c5]'}”的“plot_graph”的反向。尝试了两种模式:['index/api/plot\u-graph/?P[0-9]+$','index/api/plot\u-graph/?P[\\w-]+/$']
def plot_graph(request,column):
    data = Data.objects.all() \
        .extra(select={'data': connections[Data.objects.db].ops.date_trunc_sql('data', column)}) \
        .values(column)

    return JsonResponse(list(data),safe=False)
urlpatterns = [
    url(r'^form/$', views.Form),
    url(r'^api/plot_graph/(?P<column>[\w-]+)', views.plot_graph, name='plot_graph'),
]
var c = {{column_json | safe}}

d3.json("{% url "plot_graph" column=c %}", function(error, data) {
  data.forEach(function(d){
    d.c5 = d.c5;
  });
d3.json("{% url "plot_graph" column=column_json|safe %}", function(error, data) {
  data.forEach(function(d){
    d.c5 = d.c5;
});