Я прошел через настройку и все примеры на dajaxproject.com работают нормально, но теперь у меня проблемы с использованием того, что я узнал в более сложном случае использования , Я хотел бы передать несколько параметров функции ajax вместе с текстом из формы и создать объект, используя эти фрагменты данных.Dajax/Dajaxice сохранение объекта в ajax.py с параметрами
Если кто-нибудь может мне помочь, это было бы очень оценено.
Я использую jquery и jquery.ba-serializeobject.min.js.
Ajax.py:
@dajaxice_register
def save_comment(req, form, user_username, other_username):
dajax = Dajax()
comment_form = CreateCommentForm(deserialize_form(form))
if comment_form.is_valid():
text = comment_form.cleaned_data['text']
user = User.objects.get(username=user_username)
other_user = User.objects.get(username=other_username)
other_profile = Profile.objects.get(user=other_user)
comment = other_profile.comments.objects.create(owner=user, text=text)
comment.save()
return dajax.json()
JS:
<script type="text/javascript">
function add_comment(){
var user = '{{ person.user.username }}';
var other = '{{ other.user.username }}';
var data = $('#comment_form').serialize(true);
Dajaxice.profiles.save_comment(Dajax.process, {'form': data, 'user_username': user, 'other_username': other });
return false;
}
</script>
HTML:
<div><h4>Post Comment:</h4>
<div id="comment_form_errors"></div>
<form action="" id="comment_form" accept-charset="utf-8" method="post">
{% csrf_token %}
{{ commentform.as_p }}
<p><input class="btn profile-comment-submit" id="submit_profile_comment" onclick="add_comment()" type="submit" alt="register" /></p>
<form>
</div>
В отладочной консоли в Chrome ONl y ошибка, которую я получаю, это Dajaxice: что-то пошло не так.
Если я оставил все, что может быть важно, дайте мне знать.
Большое спасибо,
Это может происходить из-за того, как вы создаете и передаете объект JSON. Попробуйте JSON.stringify() fuction на вашем объекте данных (var data = JSON.stringify ($ ('# comment_form'). Serialize (true))). Я не использовал JQuery, поэтому я мог бы что-то упустить, но у меня есть веские основания подозревать, что это вызвано тем, как вы создаете и передаете объект JSON. – MRashid