ajax与django表单
我可以用django添加ajax代码吗? 我创建了一个简单的注册表单,它有5个字段。我希望在不同的页面中显示每个字段,但显示在单个窗口中。这意味着通过使用“下一步”按钮,5个页面希望在单个窗口中显示。同时,我要将每个页面的所有内容添加到我的数据库中。这在django和ajax中是可能的吗 我的代码如下:ajax与django表单,django,django-forms,django-templates,django-views,Django,Django Forms,Django Templates,Django Views,我可以用django添加ajax代码吗? 我创建了一个简单的注册表单,它有5个字段。我希望在不同的页面中显示每个字段,但显示在单个窗口中。这意味着通过使用“下一步”按钮,5个页面希望在单个窗口中显示。同时,我要将每个页面的所有内容添加到我的数据库中。这在django和ajax中是可能的吗 我的代码如下: #view from django.shortcuts import render_to_response from registration.m
#view
from django.shortcuts import render_to_response
from registration.models import UserDetails
from forms import UserForm
from django import forms
from django.template import RequestContext
from django.http import HttpResponseRedirect
def user_details(request):
if request.method == 'POST':
form = UserForm(request.POST)
if form.is_valid():
form.save()
else:
form = UserForm()
return render_to_response("career.html", {"form": form},context_instance=RequestContext(request))
#form
from django import forms
from registration.models import UserDetails
class UserForm(forms.ModelForm):
pass
class Meta:
model = UserDetails
#model
from django.db import models
class UserDetails(models.Model):
fname=models.CharField(max_length=20)
lname=models.CharField(max_length=20)
email = models.EmailField()
address = models.CharField(max_length=50)
country = models.CharField(max_length=20)
def __unicode__(self):
return self.fname
return self.lname
return self.email
return self.address
return self.country
#url
from django.conf.urls.defaults import patterns, include, url
from django.contrib import admin
admin.autodiscover()
urlpatterns = patterns('',
# Examples:
url(r'^registration/$', 'registration.views.user_details', name='user_details'),
url(r'^admin/', include(admin.site.urls)),
)
# template
<form enctype="multipart/form-data" method="post">{% csrf_token %}
{{ form.as_p }}
<input type="submit" ....>
</form>
#查看
从django.shortcuts导入渲染到响应
从registration.models导入用户详细信息
从表单导入用户表单
来自django导入表单
从django.template导入请求上下文
从django.http导入HttpResponseRedirect
def用户_详细信息(请求):
如果request.method==“POST”:
form=UserForm(request.POST)
如果form.is_有效():
form.save()
其他:
form=UserForm()
返回render_to_response(“career.html”,{“form”:form},context_instance=RequestContext(request))
#形式
来自django导入表单
从registration.models导入用户详细信息
类UserForm(forms.ModelForm):
通过
类元:
模型=用户详细信息
#模型
从django.db导入模型
类用户详细信息(models.Model):
fname=models.CharField(最大长度=20)
lname=models.CharField(最大长度=20)
email=models.EmailField()
地址=models.CharField(最大长度=50)
国家/地区=型号.CharField(最大长度=20)
def ___; unicode(自):
return self.fname
返回self.lname
返回self.email
返回自我地址
回归祖国
#网址
从django.conf.url.defaults导入模式,包括url
从django.contrib导入管理
admin.autodiscover()
urlpatterns=模式(“”,
#示例:
url(r“^registration/$”,“registration.views.user_details”,name='user_details'),
url(r“^admin/”,包括(admin.site.url)),
)
#模板
{%csrf_令牌%}
{{form.as_p}}
您对ajax调用做了哪些尝试
服务器只是向客户端提供一些结果,然后取决于您的客户端代码:
- 您刷新页面的原因可能是回发
- 或iframe,刷新父文档中的框架
- 或者类似html标记的标记,由$(targetElement).html($someResultFromServer)注入
对于ajax调用,您可以点击以下链接:正如Martin Thurau所说,您的问题很难理解。不管怎样,我认为你所要求的是一种阶梯式的形式
最好你看一下请重写你的问题。我不知道你在问什么。可能的重复请不要发布同一问题的多个版本。