6

robots.txtサーバーが本番用か開発用かによって、別のファイルを使用したいと考えています。

これを行うには、次のようにリクエストを別の方法でルーティングしたいと思いますurls.py

urlpatterns = patterns('',
   // usual patterns here
)

if settings.IS_PRODUCTION: 
  urlpatterns.append((r'^robots\.txt$', direct_to_template, {'template': 'robots_production.txt', 'mimetype': 'text/plain'}))
else:
  urlpatterns.append((r'^robots\.txt$', direct_to_template, {'template': 'robots_dev.txt', 'mimetype': 'text/plain'}))

patternsただし、オブジェクトを正しく使用していないため、これは機能しませんAttributeError at /robots.txt - 'tuple' object has no attribute 'resolve'

Djangoでこれを正しく行うにはどうすればよいですか?

4

2 に答える 2

0

Django 1.8 以降では、URL の追加は簡単です:

if settings.IS_PRODUCTION:
    urlpatterns += [
      url(r'^robots\.txt$', direct_to_template, {'template': 'robots_production.txt', 'mimetype': 'text/plain'}),
    ]
于 2021-01-05T15:26:24.087 に答える