0

SOMETHING を非必須にしたいので、基本的には自動的www.site.com/endpointにリダイレクトしたいと考えていwww.site.com/something/endpointます。1行でそれを行う方法はありますか?

今私はやっています:

url(r'^SOMETHING/endpoint$', 'endpoint', name='endpoint'),
url(r'^endpoint$', RedirectView.as_view(url='SOMETHING/endpoint')),

乾杯。

4

2 に答える 2

1

「エンドポイント」で終わるすべての URL をリダイレクトできるようにするよう求めていると思います。

これを行うには、リダイレクト URL の正規表現を に変更しますr"endpoint$"。正規表現のキャレット演算子は、基本的に文字列の先頭から言います。

この正規表現は、「endpoint」で終わるすべての URL に一致します。foo/endpointbar/endpoint

于 2013-09-27T16:05:09.533 に答える
1

なぜこれを1行でやりたいのですか?2 つの異なることを行う 2 つの異なる URL について話しています。1 つは HTTP リダイレクトを実行し、もう 1 つはビューをレンダリングしています。2行が正しい方法です。

両方の URL をカバーするより広い正規表現を作成すると、両方に同じビューを使用できますが、リダイレクトは発生しません (つまり、URL が に変更されませんSOMETHING/endpoint)。

于 2013-09-27T17:53:26.117 に答える