2010-02-24 7 views
1

Mes pages Web provoque l'erreur suivante sur le bouton Retour du navigateur, Il fonctionne très bien pour Firefox, mais pas IE,copie locale de cette page est obsolète

IE dit,

cause la plus probable: • La copie locale de cette page Web est obsolète et le site Web exige que vous la téléchargiez à nouveau. Ce que vous pouvez essayer: Cliquez sur le bouton Actualiser de la barre d'outils pour recharger la page. Après l'actualisation, vous devrez peut-être revenir à la page Web spécifique ou entrer de nouveau des informations.

quelle devrait être la cause? J'utilise Django + mod_python + apache comme environnement de production. Comment puis-je éliminer cette erreur ou comment tracer toute aide serait appréciée.

+0

une solution que j'ai trouvée est, j'ai changé le type de méthode de POST à ​​GET. – shahjapan

Répondre

0

L'utilisation de GET au lieu de POST n'est pas toujours possible, par ex. lorsque la quantité de données dépasse la longueur maximale de l'URL. Donc, si vous voulez utiliser POST, je suggère que vous répondiez avec une redirection après chaque POST. Quelque chose comme ça (pseudocode):

def view(request): 
    form = Form(request.form) 
    if request.method == 'POST' and form.validates(): 
     # process form data, e.g. 
     m = Model(form.data) 
     m.save() 
     # response with a redirect (e.g. to the newly inserted data, or 
     # back to the initial page) 
     return redirect(m.get_absolute_url()) 
    return render_template('template.html', form=form) 

L'avantage est que l'utilisateur ne sera pas obtenir ces avertissements ennuyeux à propos de réémission les données POST vous avez décrit et que plusieurs présentations des mêmes données sont moins susceptibles de se produire (ce qui signifie par exemple moins de doubles affichages).

0

Vous n'avez pas tort dans votre suggestion. C'est parce que vous avez utilisé un POST sur cette page. Si vous voulez que les gens reviennent à la page, placez un lien sur la page pour les ramener là où ils veulent aller, mais assurez-vous qu'ils peuvent toujours voir la page correctement sans avoir à lui envoyer des données.