J'écris le projet Python Pyramid et j'utilise jQuery et jquery.form.js. Je veux que mon point de vue gère à la fois les messages HTTP et AJAX (je ne suis pas sûr que ce soit la meilleure idée, mais c'est probablement le sujet d'une autre question ici).Gestion des exceptions dans les vues Python Pyramid
Maintenant j'utilise self.request.session.flash()
pour la notification d'erreur quand HTTP POST a été envoyé et une erreur s'est produite. Mais quand Ajax est affiché, je retourne HTTPOk() ou HTTPServerError() réponse donc je peux facilement un message d'erreur d'exposition à l'utilisateur:
$('.ajax_form').ajaxForm({
error: function(xhr, textStatus, err){
$('.ajax_messages>.alert').hide().siblings('.alert-error').show().children('p').text(xhr.responseText);
},
success: function(responseText, statusText, xhr){
$('.ajax_messages>.alert').hide().siblings('.alert-success').show().children('p').text(xhr.responseText);
}
});
Mais comme Loïc Faure-Lacroix suggéré que je pourrais envoyer dict pour les deux Ajax et les requêtes HTTP et ainsi simplifier le code.
Quelle est la meilleure idée? Que devrais-je retourner de vue lorsqu'une exception a été lancée?