Я новичок ie, работаю с Django. Мне нужен простой пример. Как отправить форму (сообщение) без обновления страницы, используя Django, Ajax, jQuery?
Это моя форма, представления и шаблон:
views.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))
forms.py
from django import forms
from django.forms import ModelForm
from linnea_demo_app.models import Advert
class AdvertForm(ModelForm):
class Meta:
model = Advert
models.py
from django.db import models
class Advert(models.Model):
text = models.TextField()
index. 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 без атрибута 'fields' или 'exclude' атрибут запрещен; Форма AdvertForm нуждается в обновлении.
Я правильно делаю?