/account/profile 处的 NoReverseMatch

NoReverseMatch at /account/profile

我在尝试 运行 JS 函数和 Ajax 按下按钮时单击调用时收到以下错误消息。

NoReverseMatch 在 /account/profile/ 找不到''的反向。 “”不是有效的视图函数或模式名称。

我知道这是因为 url,但我不确定我的 url.

有什么问题

在使用 linting 工具时,我还收到有关我的代码中缺少分号的注释错误消息,但添加逗号似乎会破坏代码。如果我将 url 更改为仅“/requestaccess/”,我将在控制台中看到 post,但该视图无效。

在 JS 中我的 var 被定义为

                  var url = '{% url requestaccess %}';

在 ajax 中,我正在尝试调用 url 使用:

                  $.ajax({
                      url: url,
                      data: JSON.stringify({ report_id: SelectedItems }),
                      dataType: 'json',
                      type: 'post',
                      success: function (data) {

URL.py 设置为:

   url(r'^requestaccess/$', views.requestaccess, name='requestaccess')

我的整个代码块是:

                  <script>
$(document).ready(function () {
                      var SelectedItems = [];
                      $('.checkbox').click(function () {
                          var SelectedItems = $(this).val();
                          var index = SelectedItems.indexOf(SelectedItems);
                          var url = '{% url requestaccess %}';
                          if (index == -1)
                          {
                            SelectedItems.push(SelectedItems);
                          }        else {
                            SelectedItems.splice(index, 1);
                          }
                        });

                      $('#submit-button').click(function (event) {
                          event.preventDefault();
                          $.ajax({
                              url: url,
                              data: JSON.stringify({ report_id: SelectedItems }),
                              dataType: 'json',
                              type: 'post',
                              success: function (data) {
                              }  //missing comma before closing curly brace
                            });
                        });
                    });
                  </script>

使用 URL 标签时,在 url 名称两边加上两个引号,如下所示

var url = "{% url 'requestaccess' %}";

完成!