例如改成'www.baidu.com'
我看了一下django(1.9.8)源码,这个链接确实是源码里(/path/to/python/site-packages/django/contrib/admin/sites.py)写死的 site_url = '/',然后在html(/path/to/python/site-packages/django/contrib/admin/templates/admin/base.html)里引用 href="{{ site_url }}" ,并没有在settings.py 定一个常量什么的。
你要是实在不想修改源码的话,试试在./settings.py TEMPLATES里最后面增加一个自定义的context_processors,在这里面也定义一个 site_url = '/xxx/' 试试能不能实现(我没有测试过)。
流程:
1、新建一个 self_context_processors.py,内容:
def set_url(request):
return {'site_url': '/xxx/'}
2、在settings TEMPLATE context_processor最下面增加:
'self_context_processors.set_url',
相识问题:https://segmentfault.com/q/10...
在你的AdminSite对象中可以修改
class MyAdminSite(AdminSite):
site_header = '控制台'
site_title = '文件管理'
site_url = '/the/url/to'
...
AdminSite.site_url 属性是1.8版本新增加的
参考文档:AdminSite attributes
How change django admin “view site” link to custom absolute url
3 回答3.1k 阅读✓ 已解决
2 回答1.9k 阅读✓ 已解决
2 回答1.3k 阅读✓ 已解决
2 回答1.8k 阅读✓ 已解决
4 回答1.9k 阅读
3 回答1.7k 阅读
1 回答1.4k 阅读✓ 已解决
最粗暴的办法,把site-packages/django/contrib/admin/templates/admin/base.html拷贝到你的项目目录/templates/admin/base.html,然后修改href="你要的url"