J'ai une page d'achat, elle peut prendre un argument optionnel comme un cadeau, si c'est un cadeau, la vue passe un formulaire de cadeau au modèle et sinon, un formulaire d'achat normal.
mon ancienne url normale, qui redirige vers deux vues distinctes :
(r'^(?P<item>[-\w]+)/purchase/$', 'purchase_view'),
(r'^(?P<item>[-\w]+)/purchase/gift$', 'gift_view'),
et les vues étaient comme ça :
def purchase_view(request,item):
....use purchase form
def gift_view(request,item):
....use giftform
Il s'agit d'une mauvaise conception, car les deux vues sont pratiquement identiques, à l'exception des formulaires utilisés.
J'ai également pensé à utiliser GET et à donner le cadeau comme paramètre GET, mais ce n'était pas une bonne idée car j'utilise la méthode POST pour ces pages, ce qui causerait un problème après la validation.
Comment puis-je faire en sorte qu'il s'agisse d'une seule url et d'une seule vue ?
Merci