0

モデルには、ロジックを持つメソッドがあります。このメソッドを呼び出してリダイレクトするビューが必要です。

私はそれが次のようなものだと思います:

class EmailMakePrimary(RedirectView):
    url = reverse('settings')

    def get(self, *args, **kwargs):
        self.make_primary()
        return HttpResponseRedirect(self.url)

私はもう試した

class ArticleCounterRedirectView(RedirectView): 
    def get_redirect_url(self, pk): 
        article = get_object_or_404(Article, pk=pk) 
        article.update_counter() 
        return reverse('product_detail', args=(pk,))

数回は機能しますが、突然機能しなくなります。

4

1 に答える 1

0

サーバー上で何かを変更しようとしている場合は、サーバーへの POST http 要求を使用することをお勧めします。たとえば、POST リクエストはキャッシュされません。

例えば:

class EmailMakePrimary(View):
    url = reverse('settings')

    def post(self, *args, **kwargs):
        self.make_primary()
        return HttpResponseRedirect(self.url)
于 2013-04-07T19:04:27.587 に答える