[英]Submitting form without refreshing page using Django, Ajax, jQuery?
我是 Django 的新手。 我需要一个简单的例子。 如何使用 Django、Ajax、jQuery 在不刷新页面的情况下提交表单(发布)?
这是我的表单、视图和模板:
视图.py
import json
from django.shortcuts import *
from django.template import RequestContext
from linnea.web_interface import run_linnea
from linnea_demo_app.forms import *
def linnea_demo(request):
if request.method == "POST":
form = AdvertForm(request.POST)
message = 'something wrong!'
if(form.is_valid()):
print(request.POST['title'])
message = request.POST['title']
return HttpResponse(json.dumps({'message': message}))
return render_to_response('linnea_demo.html',
{'form':AdvertForm()}, RequestContext(request))
表格.py
from django import forms
from django.forms import ModelForm
from linnea_demo_app.models import Advert
class AdvertForm(ModelForm):
class Meta:
model = Advert
模型.py
from django.db import models
class Advert(models.Model):
text = models.TextField()
索引.html
<form action="" method="POST" id="post-form">
{% csrf_token %}
{{form.as_p}}
<input type="submit" id="btnGetKernel" class="" value="Generate Kernel"/>
</form>
.js
$('#form').submit(function(e){
$.post('/url/', $(this).serialize(), function(data){
$('.message').html(data.message);
});
e.preventDefault();
});
但是,我收到此错误:
django.core.exceptions.ImproperlyConfigured:禁止创建没有 'fields' 属性或 'exclude' 属性的 ModelForm; 表单 AdvertForm 需要更新。
我做得对吗?
错误信息非常清楚。
禁止创建没有 'fields' 属性或 'exclude' 属性的 ModelForm; 表单 AdvertForm 需要更新。
您需要更新AdvertForm
以包含fields
或exclude
属性。
from django import forms
from django.forms import ModelForm
from linnea_demo_app.models import Advert
class AdvertForm(ModelForm):
class Meta:
model = Advert
fields = ['text']
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.