Я очень опаздываю на вечеринку, но я считаю, это именно то, что вы ищете.
Соответствующий код AJAX:
var create_note = function() {
var title = $("#title").val()
var slug = $("#slug").val()
if (title != "" && slug != "") { // Fields must actually contain something
var data = { title:title, slug:slug };
var args = { type:"POST", url:"/create/", data:data };
$.ajax(args);
}
else {
// display an explanation of failure -- optional for starters
}
return false;
};
Замените url
в args
своим собственным URL.переменная data
содержит вашу POST
информацию.В этом примере это HTML input
s с ID
s title
и slug
.Django получит /create/
(ваш URL), проанализирует его через urls.py
и перенаправит его на view
, как всегда.
Тогда вы просто заставите свою кнопку отправки вызывать эту функцию вместонормального this.form.submit();
или записи type="submit"
, например:
<input type="button" value="Submit" onClick="create_note();">
Я пропустил процесс создания сообщений об ошибках.Если вы только начинаете, вам, вероятно, пока не хочется беспокоиться о том, что видит пользователь.
Наконец, на ваш взгляд, вы можете сделать что-то вроде этого (не забудьте проложить маршрут через * 1028).*!):
def create_note(request):
note = Notes() # Sample Notes class for the purposes of this example
note.text = request.POST['slug']
note.title = request.POST['title'] # Just like what you would do normally!
note.save()