0

私はあちこち探し回っていますが、探しているものが見つかりません。パラメータとキーワードなしで URL をリダイレクトする方法を見つけましたが、パラメータを使用してそれを行うにはどうすればよいですか?

これをリダイレクトしたい:

(r'^andelsboligforeninger/(?P<page>[\d]*?)/$', 'cooperatives'),

これに:

(r'^liste-over-andelsboligforeninger/(?P<page>[\d]*?)/$', 'cooperatives'),

永続的なリダイレクトにする必要があります。これは SEO にとって良いことであり、Googlebot のせいで非常に多くのデバッグ メールを受け取ります。

4

2 に答える 2

1

django docs で答えを見つけたようです-結局のところ、私は十分に見ていませんでした!

https://docs.djangoproject.com/en/1.1/ref/generic-views/

urlpatterns = patterns('django.views.generic.simple',
     ('^foo/(?P<id>\d+)/$', 'redirect_to', {'url': '/bar/%(id)s/'}),
)
于 2013-01-16T22:42:35.473 に答える
0

まず、URLにいくつかの変更を加える必要があります。URL関数を使用して、URLに名前を付けます。URLにいくつかの問題があります。たとえば、使用?Pしたがキャプチャグループに名前を付けなかった場合などです。第二に、数字が存在するか、まったく存在しない可能性があるため[\d]*?、必要はありません。したがって、上記のすべてのバグとテクニックを最終的に検討した後、URLは次のようになります。?*

url(r'^liste-over-andelsboligforeninger/(?P<cooperative_id>\d*)/$', 'cooperatives', name="cooperatives")

次に、ビューで逆URL解決を次のように使用できます。

redirect(reverse('cooperatives', kwargs={'cooperative_id': some_id}))
于 2013-01-16T18:23:20.453 に答える