javascript - 使用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:禁止创建没有“字段”属性或“排除”属性的 ModelForm;表单 AdvertForm 需要更新。
我做对了吗?
解决方案
错误信息非常清楚。
禁止创建没有 'fields' 属性或 'exclude' 属性的 ModelForm;表单 AdvertForm 需要更新。
您需要更新AdvertForm
以包含 afields
或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']
推荐阅读
- java - How to capture video from camera,process it (do some task on it),then show it real-time on the screen to the user in android?
- python - 如何在方法之后多次使用 Tkinter,或者是否有替代方法?
- css - Bootstrap Popover on SVG icon - Wrong Arrow Direction
- electron - Open file in existing electron window instead of creating new one in Windows
- javascript - React native Dropdownalert with Navigation not working together in Redux Saga
- ios - Xcode swift: How to add a share screen where you can share your own app
- java - Java HTMLUnit and html2canvas to generate image "Cannot modify readonly property:"
- html - how can i get Drop down Selected text mvc
- c++ - 使用传递的 lambda 调用 std::visit
- android - 使用导航 UI 组件在片段之间传递数据