这是非常的;在适用的情况下使用特定语言标签。变量是内存中的命名数据存储位置。使用变量,计算机程序可以存储数字,文本,二进制数据或任何这些数据类型的组合。他们可以在程序中传递。
两个连续变量的乘法 - 如何在 CPLEX opl 中编码?
我有一个约束,其中两个连续变量相乘(价格和时间),作为线性化我的问题的方法,我想将价格转换为离散变量,然后执行...
数据: 第 1 行 = 1232 第 2 行 == 1456 第 3 行=2345 预期产出 第 1 行=1232 第2行==1456 第 3 行=2345 这是在 nvim 编辑器中,我想用正则表达式删除上面提到的空格。我想要...
以下内容对我不起作用: ssh [email protected] "k=5; echo $k;" 它只是返回一个空行。 如何在远程会话 (ssh) 上分配变量? 注意:我的问题不是关于...
既然我们在 if 中将 int 的值更改为 10,为什么在子进程及其创建的子进程的第二个 fork 后,我会得到 33 ?
这是代码: int main(int argc, char *argv[ ]){ 整数x = 33; 如果(!fork()){ 整数x = 10; printf("%d “, X); } 叉(); printf("%d “, X);
此脚本在 main() 内部定义了一个变量,但该变量不可用于在 main() 内部运行的 func()。这是为什么? #!/usr/bin/env python3 # vars_in_func.py # 变量测试脚本
我让这个程序有一个定时输入: 导入时间 从线程导入线程 def get_answer(): 答案=输入(“回答问题!!!”) def 运行时(): 时间.睡眠(1) ...
将点 (x1, y1) 和点 (x2, y2) 之间的距离分配给 point_dist。计算公式为: 距离 = SquareRootOf( (x2 - x1)2 + (y2 - y1)2 )
将点 (x1, y1) 和点 (x2, y2) 之间的距离分配给 point_dist。计算公式为:距离 = SquareRootOf( (x2 - x1)2 + (y2 - y1)2 )。 带输入的示例输出:1.0 2.0 1.0 5.0 波伊...
如何通过单击 javascript 中的按钮来切换变量 // 这是我的变量 BOTTON.document.getElementById('bttn'); 让 cliked = false; // 我想在按下按钮时更改为 true
函数 myFunction(a,回调){} myFunction(a, 函数(测试){c = '结果';}); console.log('值c'+c); 关于如何进入第三行以获得值 с 有什么想法吗? 我尝试使用: var c =
php Laravel 9 未定义变量 $questions
我有两个表:用户和问题,我有一个用于创建问题的表单和一个用于显示创建的所有问题的index.blade.php 视图。但是当我想显示索引视图时出现这个错误......
如何将csrf_token传递到django中的javascript文件?
这是我的 JavaScript 代码,运行良好。但我喜欢将 javascript 文件分开,而不是用作内联脚本标签 $('.book').click(function() { var id= $(这个)...</desc> <question vote="8"> <p>这是我的 JavaScript 代码,运行良好。但我喜欢将 javascript 文件分开,而不是用作内联脚本标签</p> <pre><code><script> $('.book').click(function() { var id= $(this).attr('id'); data={ 'id':id, 'csrfmiddlewaretoken':'{{ csrf_token }}', }; $.ajax({ url: '/post/book/', cache:'false', dataType:'json', type:'POST', data:data, success: function(data){ //do something else { //do something } }, error: function(error){ alert('error; '+ eval(error)); } }); return false; }); }); </script> </code></pre> <p>我想将其包含在我已包含在 base.html 中的 custom.js 文件中。 这是 </p> <pre><code>{% load static from staticfiles %} {% load bootstrap3 %} <!DOCTYPE html> <html lang="en"> <head> <meta charset="utf-8"> <meta name="viewport" content="width=device-width, initial-scale=1.0"> <title>{% block title %}{% endblock %}</title> {% bootstrap_css %} <!-- Optional theme --> <link rel="stylesheet" href="//netdna.bootstrapcdn.com/bootstrap/3.1.1/css/bootstrap-theme.min.css"> <link href="{% static "css/custom.css" %}" rel="stylesheet"> <!-- Latest compiled and minified JavaScript --> <script src="//ajax.googleapis.com/ajax/libs/jquery/1.11.0/jquery.min.js"></script> <script src="http://ajax.aspnetcdn.com/ajax/jquery.dataTables/1.9.4/jquery.dataTables.js"></script> <script src="{% static "js/custom.js" %}" ></script> <script src="{% static "js/jquery.blockUI.js" %}"></script> {% bootstrap_javascript %} {% load bootstrap3 %} {% load static from staticfiles %} {% block content %} {% endblock %} </code></pre> <p>我无法将 Django 中当前模板中可用的 <pre><code>csrf_token</code></pre> 引用到 <pre><code>static js</code></pre> 文件。我怎样才能让它发挥作用?</p> </question> <answer tick="true" vote="27"> <p>如果您想引用模板标签,那么您需要由 Django 对该文件进行模板化(渲染)。我不建议通过 django 渲染所有静态文件... </p> <p>您可以将 csrf_token 放入全局变量中,然后从脚本中访问该变量。你的 base.html 中有类似这样的内容:</p> <pre><code><script> var csrftoken = '{{ csrf_token }}'; </script> </code></pre> <p>或者您可以从 javascript 文件中的 cookie 中提取 csrftoken。请参阅<a href="https://stackoverflow.com/questions/10730362/get-cookie-by-name">此问题</a>以获取解决方案。这种饼干叫做 <pre><code>csrftoken</code></pre>。您可以通过打开开发工具并查看您的域的 cookie 来查看它。 </p> </answer> <answer tick="false" vote="10"> <p>您可以使用以下函数从客户端的“csrftoken”cookie 访问 CSRF 令牌:</p> <pre><code>function getCookie(name) { var cookieValue = null; if (document.cookie && document.cookie != '') { var cookies = document.cookie.split(';'); for (var i = 0; i < cookies.length; i++) { var cookie = cookies[i].trim(); // Does this cookie string begin with the name we want? if (cookie.substring(0, name.length + 1) == (name + '=')) { cookieValue = decodeURIComponent(cookie.substring(name.length + 1)); break; } } } return cookieValue; } </code></pre> <p>并称其为:</p> <pre><code>getCookie('csrftoken'); </code></pre> <p>或者您可以简单地在 HTML 模板中定义一个变量并在客户端脚本中使用它。</p> <pre><code><script> var CSRF_TOKEN = '{{ csrf_token }}'; </script> </code></pre> </answer> <answer tick="false" vote="3"> <p>CSRF 令牌可作为页面上的 cookie 使用,名称为“csrftoken”。 Django 文档建议获取 cookie 并将其作为 <pre><code>X-CSRFToken</code></pre> 传递到 HTTP 请求标头中。然后您可以使用 <pre><code>@csrf_protect</code></pre> 装饰器来保护视图。</p> <p>以下是关于 AJAX 的 Django 文档:<a href="https://docs.djangoproject.com/en/dev/ref/contrib/csrf/#ajax" rel="nofollow">https://docs.djangoproject.com/en/dev/ref/contrib/csrf/#ajax</a>。 </p> <p>因此使用 <a href="http://plugins.jquery.com/cookie/" rel="nofollow">jQuery cookie 插件</a>,您的代码可能如下所示:</p> <pre><code>$.ajax({ url: '/post/book/', cache: 'false', dataType: 'json', type: 'POST', data: data, beforeSend: function(xhr) { xhr.setRequestHeader('X-CSRFToken', $.cookie('csrftoken')), }, success: function(data) {}, error: function(error) {} }); </code></pre> </answer> <answer tick="false" vote="2"> <p>您可以简单地在 HTML 模板中定义它,例如:</p> <pre><code><script> var CSRF_TOKEN = '{{ csrf_token }}'; </script> </code></pre> <p>会起作用的</p> </answer> <answer tick="false" vote="2"> <p>在 Django 2.x 中 参考:<a href="https://docs.djangoproject.com/en/2.2/ref/csrf/" rel="nofollow noreferrer">https://docs.djangoproject.com/en/2.2/ref/csrf/</a></p> <p>这是一个最小的例子。</p> <p>首先在 html 模板中插入您的网址。</p> <pre><code><input type="hidden" id="u_calc" data-url="{% url 'demo:calc' %}"/> </code></pre> <p>然后,从 cookie 中获取您的 url 和 csrf 令牌。在ajax请求中使用<pre><code>beforeSend</code></pre>。</p> <pre><code>let u_calc = $("#u_calc").attr("data-url"); function getCookie(name) { var cookieValue = null; if (document.cookie && document.cookie !== '') { var cookies = document.cookie.split(';'); for (var i = 0; i < cookies.length; i++) { var cookie = cookies[i].trim(); // Does this cookie string begin with the name we want? if (cookie.substring(0, name.length + 1) === (name + '=')) { cookieValue = decodeURIComponent(cookie.substring(name.length + 1)); break; } } } return cookieValue; } var csrftoken = getCookie('csrftoken'); function csrfSafeMethod(method) { // these HTTP methods do not require CSRF protection return (/^(GET|HEAD|OPTIONS|TRACE)$/.test(method)); } function get_result(number) { let n = number.val(); $.ajax({ beforeSend: function (xhr, settings) { if (!csrfSafeMethod(settings.type) && !this.crossDomain) { xhr.setRequestHeader("X-CSRFToken", csrftoken); } }, method: "POST", type: "POST", url: u_calc, async: true, dataType: "json", data: JSON.stringify({'number': n}), contentType: "application/json", success: function (data) { alert(data.result); }, }); } </code></pre> <p>在 <pre><code>views.py</code></pre> 中,<pre><code>calc</code></pre> 函数可能看起来像</p> <pre><code>def calc(request): if request.is_ajax() and request.method == "POST": data = json.loads(request.body) number = int(data["number"]) return JsonResponse({"result": 2 * number}) </code></pre> </answer> <answer tick="false" vote="1"> <p>你可以这样通过<pre><code>csrf_token</code></pre></p> <pre><code>function deleteAccount(id, name) { if (confirm('Do you want to delete ' + name + '?')) { $.ajax({ type: 'post', url: url, data: 'csrfmiddlewaretoken={{csrf_token}}', success: function() { window.location.reload(true); } }); } } </code></pre> </answer> <answer tick="false" vote="1"> <pre><code><button id="check_button" data-csrf="{{ csrf_token }}"> button </button> </code></pre> <pre><code>$(document).ready(function() { $('#check_button').click(async function() { await fetch(url, { method: 'POST', headers: { 'X-CSRFToken': $(this).data().csrf, }, ... }) ... }) }) </code></pre> </answer> <answer tick="false" vote="0"> <blockquote> <p>通常建议使用 HTML 数据属性或 json_script 过滤器传递数据,而不是使用嵌入式 JavaScript。 <a href="https://docs.djangoproject.com/en/4.2/ref/templates/builtins/#escapejs" rel="nofollow noreferrer">参考</a></p> </blockquote> <p>我建议使用内置模板标签<a href="https://docs.djangoproject.com/en/4.2/ref/templates/builtins/#csrf-token" rel="nofollow noreferrer">csrf_token</a>传入过滤器<a href="https://docs.djangoproject.com/en/4.2/ref/templates/builtins/#json-script" rel="nofollow noreferrer">json_script</a>,然后从Javascript获取令牌。</p> <pre><code>{{ csrf_token|json_script:"csrf_token" }} ... <script> const csrf_token = JSON.parse(document.querySelector('#csrf_token').textContent); </script> </code></pre> <p>问题是令牌没有格式化为字符串。您需要将令牌转换为字符串。我只需创建一个名为 <pre><code>stringify</code></pre> 的自定义过滤器,您可以通过管道将令牌字符串化</p> <pre><code>from django import template register = template.Library() @register.filter def stringify(value): return str(value) </code></pre> <p>这样,</p> <pre><code>{{ csrf_token|stringify|json_script:"csrf_token" }} </code></pre> <p>然后您可以在 Javascript 中访问该值,并将其作为 AJAX 请求的标头传递,或将其用于其他用途。</p> </answer> <answer tick="false" vote="-1"> <p>我尝试了很多方法来解决这个问题,这里是回顾:</p> <ol> <li><p>在单独的 js 文件中使用 {{ csrf_token }} 不起作用,如果您将其嵌入到 django 模板中。</p> </li> <li><p>在你看来使用@csrf_protect效果并不好,因为它只能保护一部分功能。</p> </li> <li><p><strong>正确的实现方法在这里:</strong></p> <p>从 django.views.decorators.csrf 导入 csrf_exempt</p> </li> </ol> <p>然后在视图函数之前,使用@csrf_exempt:这是一个例子</p> <blockquote> <p>从 django.views.decorators.csrf 导入 csrf_exempt</p> <p>@csrf_exempt</p> <p>def 函数名(请求):</p> <p>您的职能在这里。</p> </blockquote> <p>希望有帮助</p> </answer> </body></html>
类测试类(): 类_v = 0 def __init__(self) -> 无: self.class_v += 1 TestClass.class_v += 1 打印(TestClass.class_v)#0 类_a =
如果我写这样的东西: #包括 int main() { 使用命名空间 std; {int n;n=5;} cout< 如果我写这样的东西: #include <iostream> int main() { using namespace std; {int n;n=5;} cout<<n; system("pause"); return 0; } 编译器告诉我 n 未声明。然后我尝试将其设为静态,但编译器再次告诉我它未声明。声明为 static 的变量没有程序作用域吗?如果没有,我该如何在这个程序中使用 n ? 您混淆了范围和生命周期。静态变量的生命周期与程序的生命周期相同,但它们仍然遵循基于声明位置的作用域规则。 n的范围就在括号之间: {int n;n=5;} 所以在块之外,你没有 n 变量。 将其设为静态只会使其值在退出块后保留,以便下次再次进入该块时,您可以检索上次执行该块时的值,但它的范围仍然在括号内。 在全局作用域中声明为静态的变量,其作用域仅限于翻译单元。在函数内声明为静态的变量的生命周期设置为与程序的生命周期相同,但在这种情况下不会影响其作用域。您必须将 cout 置于与声明 n 相同的范围内才能使用它。 这里编译器给出错误 n is undeclared 因为这里“{int n;n=5;}”它是在大括号中声明的。大括号告诉我们变量的范围。 作用域结束时,变量将从内存中删除。 对于静态和本地。 静态:该变量与全局变量相同,但其值在整个应用程序中保持不变。并且静态变量不能在其他页面使用extern使用。 Local:局部变量存储在堆栈中,当它们超出范围时被删除。 如何在这个程序中使用n? using namespace std; int main() { int n; // declare n as int n=5; // assign it a value cout << n; // display it. system("pause"); return 0; } 请不要混淆静态变量的范围和生命周期。范围意味着您可以在哪里访问变量。变量的生命周期是指变量在内存中停留的时间。就你而言, x 变量的范围在花括号内。 x 的生命周期将是程序范围。 在可访问性方面考虑以下全局静态范围的示例 #include <iostream> using namespace std; static int y; class A { public: void increment() { ++y; } }; class B { public: void increment() { ++y; } }; int main() { A a; a.increment(); cout << y << endl; A b; b.increment(); cout << y << endl; B c; c.increment(); cout << y; return 0; } 输出 1 2 3 这里全局静态变量访问是在 A 类和 B 类中进行的。 在可访问性方面考虑以下类静态范围的示例 #include <iostream> using namespace std; class A { public: static int y; void increment() { ++y; } }; class B { public: static int x; void increment() { ++x; } }; int A::y = 1; int B::x = 1; int main() { A a; a.increment(); cout << a.y << endl; A b; b.increment(); cout << b.y << endl; B c; c.increment(); cout << c.x; return 0; } 输出 2 3 2 这里静态变量 y 范围是 A 类,x 范围是 B 类。 如果您尝试使用 B 类对象访问静态变量 y,那么它将返回错误。 (B b -> b.y) 静态变量 x 和 y 的生命周期都保持到 main 结束。
语法“variable_name: type: another_type”在Python中意味着什么?
我在研究nltk时,在nltk.corpus的init.py文件中发现了一个以前从未见过的语法。 cess_cat: BracketParseCorpusReader = LazyCorpusLoader( “cess_cat”,
OBS!我的代码是用瑞典语术语编写的。 我必须编写增值税表,但遇到了一些有关浮点及其舍入值的方式的问题。起初,我使用的是 while 循环,但是......
将phone_number转换为整数时出错:基数为10的int()的文字无效:''
我正在尝试执行以下操作: 该脚本从文件中取出一行,将其拆分,然后将电话号码设置为星号拨号方案的变量。 文件行看起来像: 美国能源部,约翰,亚当,
我正在用 Kivy 编写 Python 脚本。截至目前,该应用程序正在按预期运行。但我遇到了障碍并且无法找到解决方案。在“输出类(屏幕)”类中...
我有一个字符串,其中包含一个变量,我想在程序的某个时刻定义该变量,以及稍后将定义的其他变量。我需要以 f'string 方式定义前者,而后者......
我有这些列表,我想获取名称的值: [{ “tr”:[{ “名称”:“#For5Rs”, “促销内容”:空, “查询”:“%23For5Rs”, “事件”:空 }, { “姓名”:“