On Wednesday 15 October 2008 10:12:35 Amit Upadhyay wrote: > My wish for django would be, either 1. a position that other than > the Session, there is no data changes by entire django if request > method is GET. or 2. a wiki/doc page explaining what all database > changes that can happen as part of GET request processing by > django, and a suitable workaround [hoping a workaround exists for > all use cases, currently the workaround for user messages is only > available as a patch attached to a ticket]. > > Some kind of clarity on this would be good to have for 1.x.
It is not desirable to have Django try to enforce this, since GET requests are allowed to have side effects, just not side effects that "have the significance of taking an action other than retrieval" [1]. There are all kind of use cases where it is good to be able to track the fact that the user has made a retrieval. (Amazon and 7digital track pages you've visited, for instance, to help you keep track of items you are interested in). Second, even if you could enforce it at the database level, there are many other ways you could have side effects e.g. mail, filesystem. In short, there is no option but to require developers to understand HTTP. Django's position is clear, it is the same as the HTTP spec. Luke [1] http://www.w3.org/Protocols/rfc2616/rfc2616-sec9.html#sec9.1 -- "Because Your lovingkindness is better than life, My lips shall praise You." (Ps 63:3) Luke Plant || http://lukeplant.me.uk/ --~--~---------~--~----~------------~-------~--~----~ You received this message because you are subscribed to the Google Groups "Django developers" group. To post to this group, send email to django-developers@googlegroups.com To unsubscribe from this group, send email to [EMAIL PROTECTED] For more options, visit this group at http://groups.google.com/group/django-developers?hl=en -~----------~----~----~----~------~----~------~--~---