我对姜戈是个新手,对阿贾克斯也是个新手。我正在做一个项目,我需要整合这两个。我相信,我理解了它们背后的原理,但没有找到一个很好的解释两者在一起。
谁能给我一个快速的解释,代码库必须如何改变与他们两个集成在一起?
例如,我还能在Ajax中使用HttpResponse
吗,或者我的响应必须随着Ajax的使用而改变吗?如果是,请提供一个对请求的答复必须如何改变的例子?如果有任何区别,我返回的数据是JSON。
即使这不是完全在SO精神,我喜欢这个问题,因为我有同样的麻烦当我开始,所以我给你一个快速的指导。很明显,你不了解它们背后的原则(不要把它当作是一种冒犯,但如果你了解了,你就不会问了)。
Django是服务器端的。这意味着,假设客户机转到一个URL,您在views
中有一个函数,它呈现他看到的内容,并以HTML形式返回响应。下面我们将其分解为示例:
views.py:
def hello(request):
return HttpResponse('Hello World!')
def home(request):
return render_to_response('index.html', {'variable': 'world'})
index.html:
<h1>Hello {{ variable }}, welcome to my awesome site</h1>
urls.py:
url(r'^hello/', 'myapp.views.hello'),
url(r'^home/', 'myapp.views.home'),
这是最简单用法的一个例子。转到127.0.0.1:8000/hello
意味着对hello()
函数的请求,转到127.0.0.1:8000/home
将返回index.html
并按要求替换所有变量(您现在可能已经知道了这一切)。
现在我们来谈谈Ajax。AJAX调用是执行异步请求的客户端代码。这听起来很复杂,但它仅仅意味着它在后台为您执行一个请求,然后处理响应。因此,当您对某个URL进行AJAX调用时,您得到的数据与用户访问该位置时得到的数据相同。
例如,对127.0.0.1:8000/hello
的AJAX调用将返回与您访问时相同的内容。只是这一次,您将它放在JavaScript函数中,您可以任意处理它。让我们来看一个简单的用例:
javascript prettyprint-override">$.ajax({
url: '127.0.0.1:8000/hello',
type: 'get', // This is the default though, you don't actually need to always mention it
success: function(data) {
alert(data);
},
failure: function(data) {
alert('Got an error dude');
}
});
大致流程是这样的:
127.0.0.1:8000/hello
,就像您打开了一个新选项卡并自己完成一样。现在这里会发生什么?你会收到一个带有“你好世界”的警报。如果对主页执行AJAX调用会发生什么情况?同样,您将得到一个提示,说明
换句话说--AJAX调用并没有什么新的东西。它们只是一种让用户在不离开页面的情况下获得数据和信息的方式,它使您的网站设计流畅,非常整洁。您应该注意以下几个指导原则:
console.log
来调试。我就不详细解释了,随便谷歌一下了解一下就行了。这对你很有帮助。csrf_token
。对于AJAX调用,很多时候您希望在不刷新页面的情况下发送数据。在最终记住这一点之前,您可能会遇到一些麻烦--等等,您忘记发送csrf_token
。这是AJAX-Django集成初学者的一个众所周知的障碍,但是在学习了如何使其更好地运行之后,就很容易了。这就是我想到的一切。这是一个很大的主题,但是的,可能没有足够的例子在那里。只要你努力,慢慢地,你最终会得到它的。
我对姜戈是个新手,对阿贾克斯也是个新手。我正在做一个项目,我需要整合这两个。我相信,我理解了它们背后的原理,但没有找到一个很好的解释两者在一起。 谁能给我一个快速的解释,代码库必须如何改变与他们两个集成在一起? 例如,我还能在Ajax中使用吗,或者我的响应必须随着Ajax的使用而改变吗?如果是,请提供一个对请求的答复必须如何改变的例子?如果有任何区别,我返回的数据是JSON。
问题内容: 我是Django的新手,而Ajax的新手。我正在一个需要将两者整合的项目中。我相信我理解它们背后的原理,但是并没有找到对两者的良好解释。 有人可以给我快速解释一下如何将两者集成在一起来更改代码库吗? 例如,我仍然可以将与一起使用,还是必须随着Ajax的使用而改变我的回答?如果是这样,请你举例说明如何更改请求的响应?如果有什么不同,我返回的数据是JSON。 问题答案: 即使这不完全符合S
问题内容: 我正在寻找有关symfony2中有关ajax的简单教程/示例,供初学者使用? 我有这些例子: city.php:http://pastebin.com/Qm8LS5kh ajax_req.js:http://pastebin.com/UqJMad24 index.html:http://pastebin.com/H1err4Yh 如何将它们放入Symfony2应用程序中? 问题答案:
我第一次尝试Drools/Guvnor,我们计划在Guvnor中进行规则创作,编译、构建并将包下载到“规则包目录”。 现在我遇到的问题是,将Drools与我们的Java应用程序集成的最佳方式是什么?选项1)构建知识代理并开始将事实插入内存以在我们的应用程序中进行规则评估。在这种情况下,Drools引擎使用与应用程序JVM相同的JVM。选项2)拥有一个构建知识代理的Drools Server,应用程
我们正在开发一个应用程序,将使用CPLEX解决一个工业问题。开发了一个数学模型(文件)。我们希望直接使用该模型,而不是使用CPLEX Java API重新转录。 在我们的架构中,我们有一个专门用于检索业务数据和创建合适的文件的应用程序。原始模型和这些数据文件应发送到安装在单独机器上的CPLEX实例。 问题是允许加载和运行文件的OPLJavaAPI不提供任何API来使用远程CPLEX实例。另一方面,
问题内容: 我想将Angular 4客户端应用程序与正在运行并提供一些Rest端点的Java Spring应用程序集成在一起。我的目标是能够从类似的网址调用Angular应用。我怎样才能做到这一点? 提前致谢, 问题答案: 您将需要创建ng应用并将其放置在spring-boot文件夹中 这将帮助您在spring-boot下运行angular-app。 然后点击http:// localhost:8