ajax与django形式 [英] ajax with django forms
本文介绍了ajax与django形式的处理方法,对大家解决问题具有一定的参考价值,需要的朋友们下面随着小编来一起学习吧!
问题描述
我创建了一个具有5个字段的简单注册表单。我希望在不同的页面,但在一个窗口中的每个字段。这意味着通过使用下一个按钮5页想在单个窗口中放弃。同时每个页面的所有内容我想添加到我的数据库。这是可能的在django与ajax ..
我的代码如下:
#view
$ b从django.shortcuts导入render_to_response
从registration.models导入UserDetails
从表单import UserForm
从django导入表单
从django.template导入RequestContext
from django.http import HttpResponseRedirect
def user_details(request):
if request.method =='POST':
form = UserForm(request.POST)
如果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
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 pattern,include,url
from django.contrib import admin
admin.autodiscover()
urlpatterns = pattern s('',
#示例:
url(r'^ registration / $','registration.views.user_details',name ='user_details'),
url (r'^ admin /',include(admin.site.urls)),
)
#模板
< ; form enctype =multipart / form-datamethod =post> {%csrf_token%}
{{form.as_p}}
< input type =submit.... >
< / form>
解决方案
正如Martin Thurau所说,你的问题很难理解。无论如何,我认为你所要求的是一个阶梯式的形式。
最好你看一下 Django的窗体向导在这里
can i add the ajax code with django? i have created a simple registraion form that have 5 fields . i wish to disply the each fields in different pages but in a single window . it means by using next button 5 pages want to disply in a single window. same time all content of each page i want add to my database. is this possible in django with ajax..
my codes are as follows :
#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>
解决方案
As Martin Thurau stated your question is very hard to understand. Regardless I think that what you are asking for is a stepped form.
Best you take a look at Django's Form Wizard here
这篇关于ajax与django形式的文章就介绍到这了,希望我们推荐的答案对大家有所帮助,也希望大家多多支持IT屋!
查看全文