我怎么能得到完整/绝对的URL(例如https://example.com/some/path)在Django没有网站模块?这太愚蠢了……我不需要查询我的数据库来抓取URL!
我想使用reverse()。
我怎么能得到完整/绝对的URL(例如https://example.com/some/path)在Django没有网站模块?这太愚蠢了……我不需要查询我的数据库来抓取URL!
我想使用reverse()。
当前回答
不是绝对的url,但我正在寻找只是得到主机。如果你想在view.py中获得host,你可以这样做
def my_view(request):
host = f"{ request.scheme }://{ request.META.get('HTTP_HOST') }"
其他回答
我使用这个代码:
request.build_absolute_uri('/')[:-1]
回应:
https://yourdomain.com
在你看来,只需这样做:
base_url = "{0}://{1}{2}".format(request.scheme, request.get_host(), request.path)
request.get_host()
在django中使用这个请求对象
我明白了:
wsgiref.util.request_uri(request.META)
获取包含模式、主机、端口路径和查询的完整uri。
如果你想使用reverse(),你可以这样做:request。build_absolute_uri(反向(view_name, args = (obj。pk,)))