1
我想只顯示管理員爲我的網站與ID 1. 在其他意見我已經在dispatch
定義這個,但我還沒有找到一種方法來做到這一點管理員。只允許django管理員現場ID 1
我試過製作custom admin class,但是我沒有看到這樣做的方法。
有沒有辦法爲管理員定義dispatch
或限制管理員顯示的網站?
我使用的調度:
def dispatch(self, *args, **kwargs):
try:
if get_current_site(self.request).pk != settings.MY_SITE_ID:
response = render(self.request, 'my_app/404.html')
response.status_code = 404
return response
except Site.DoesNotExist:
response = render(self.request, 'my_app/404.html', {'site_doesnotexist': True})
response.status_code = 404
return response
return super(MyView, self).dispatch(*args, **kwargs)
我不確定我關注,我的所有網站都使用相同的設置文件。所有網站也有相同的觀點和模型。我如何爲一個網站設置單獨的設置文件? – guival
對不起。我以爲你使用的是[站點框架](https://docs.djangoproject.com/en/1.11/ref/contrib/sites/),它是Django的一個可選部分,並且每個站點都有單獨的設置文件。您還可以使用中間件爲每個請求設置'request.urlconf',但我不確定是否可以從中間件調用'get_current_site'。 – evergreen