Django_雜

 

一、url帶一些GET參數"url?a=1&b=2",經過QueryDict以及其urlencode()進行處理css

        from django.http.request import QueryDict
        param_dict = QueryDict(mutable=True)
        if request.GET:
            param_dict["_changelistfilter"] = request.GET.urlencode()
        base_add_url = reverse("{2}:{0}_{1}_add".format(self.app_label,self.model_name,self.site.namespace))
        add_url = "{0}?{1}".format(base_add_url,param_dict.urlencode())

 

QueryDict類型
page_param_dict = copy.deepcopy(request.GET)
page_param_dict._mutable = True

page_param_dict["k"] = "v"

 

二、在html引入static裏的文件,不用寫死html

STATIC_URL = '/static/'
settings.py
{% load static %}
<!DOCTYPE html>
<html lang="en">
<head>
    <meta charset="UTF-8">
    <title>Title</title>
    <link rel="stylesheet" href="{% static 'yg/plugins/bootstrap-3.3.7-dist/css/bootstrap-theme.css' %}" >
</head>
html

 

三、獲取request源ipdjango

有些網站服務器會使用ngix等代理http,或者是該網站作了負載均衡,致使使用remote_addr抓取到的是1270.0.1,這時使用HTTP_X_FORWARDED_FOR纔得到是用戶的真實IP。

if request.META.has_key('HTTP_X_FORWARDED_FOR'):
    ip =  request.META['HTTP_X_FORWARDED_FOR']
else:
    ip = request.META['REMOTE_ADDR']
相關文章
相關標籤/搜索