简介:许多朋友询问Django如何获得有关前台选项数据的相关问题。本文的首席CTO笔记将为您提供详细的答案,以供所有人参考。我希望这对每个人都会有所帮助!让我们一起看看!
在Django中获取参数:
url ='管理员/操作?name = xxxpwd = xxx'上方格式,名称和pwd是html中表的ID,例如输入id.xxx表示可以固定的值,或者由js获得的输入框的值。
特点
字符形的数据相对容易获得。
senddata = {“ exportType”:exportType,exportType,
“ bugids”:bugids,
“测试”:json.stringify({“ test”:“ test”})
};
只需使用exportType = request.get.get.get(“ exportType”)在django的后端
您可以正常获取此数据。
注意:Python2.7中的数据由Unicode编码。如果您想使用它,有时您需要转向str
结果:示例:
DEBL类型“ Unicode”
大批
获取数组类型的数据。如果您使用获得字符串数据的方法,则结果无。我们想使用此方法:
bugids = request.get.getList(“ bugids []”)
以这种方式获得的数据是数组类型。
注意:所获得的数组中的元素是Unicode编码的,并且需要某个点需要该部分
结果:示例:
?通过URL
[14/JUL/2016 11:00:41]“ get/testtools/exportbug/?exportType = exporttype = explbugids%5b%5d = 102bugids%5D = 101bugids%5D
?获得的数据
[u'102',u'101',u'100',u'99',u'98',u'97',u'96',u'96',u'95',u'94',u'94',u'93',u'92',u'91',u'90',u'89',u'88',u'87'
典型的
典型数据可以视为字符串数据。获得相应的字符串后,您可以使用JSON模块将其格式化。
对于前端,传递字典的典型数据是传递JSON数据,因此使用方法是:
“测试”:json.stringify({“ test”:“ test”})
结果:示例:
{“ test”:“ test”}键入'unicode'
相关的源代码
?获取方法
GET方法是WSGI中的一种方法。
def获取(自我):
#WSGI规格说“ query_string”可能是清晰的。
raw_query_string = get_bytes_from_wsgi(self.envring,'query_string','')
返回http.querydict(raw_query_string,encoding = self._encoding)
最终返回是http.querydict(raw_query_string,encoding = self._encoding)http的原始数据,而QueryDict在MultivalueDics中继承了,因此我们只看了多亚数。
?数量化
实际上,源代码看起来并不困难。
def get(self,key,default = none):
”“”
返回传递密钥的最后一个数据值。如果键do
或值是一个空列表,然后默认被拒绝。
”“”
尝试:
val = self [键]
除了键:
返回默认值
如果值== []:
返回默认值
返回阀
def getList(self,key,default = none):
”“”
返回传递密钥的值列表。如果键不存在,
然后重新列出默认值。
”“”
尝试:
返回super(Multivaledict,self).__ getItitItem __(键)
除了键:
如果默认为无:
返回 []
返回默认值
def __getItem __(self,key):
”“”
返回该密钥的最后一个数据值,或[]如果是一个空列表;
如果找不到的话,请提高钥匙扣。
”“”
尝试:
list_ = super(MultivalueDict,self).__ getItitItem __(键)
除了键:
提高MultivaleMedIctKeyError(reter(key))
尝试:
返回列表_ [-1]
除了IndexError:
返回 []
如何获得数据库数据的基本知识属于Django Orm部分,请参阅Django官方网站教程。如果您不了解英语,可以看到一些自我challor的模型教程。
如何可视化数据到页面的数据属于前端知识,这与您的数据类型,数据卷,显示形式,期望,所选的前端框架和UI框架有关。
#django原始库
导入django.http作为djangohttp
#DJANGO第三张库
导入REST_FRAMEWORK.VIEWS作为rfview
导入REST_FRAMEWORK.RENDERS作为RFREADER
#自自自
导入codingPond
类iView(rfview.apiview):
renderr_classes =(rfreader.jsonprenderer,)
jsonresponse类(djangohttp.httpresponse):
”“”
httprespespons将其满足于JSON。
”“”
def __init __(self,data = none,header = {},** kwargs):
content = rfreader.jsonrenderer()。渲染(数据)
打印内容
#content = codingpond.authcode_encode(内容,“”)
kwargs ['content_type'] ='application/json'
super(jsonresponse,self).__ init _(内容,** kwargs)
self._init_header(标题)
def _init_header(self,header):
对于键,inter.items()中的值:
self [key] =值
这样,以上是httptools.iview界面,然后是视图继承
classifyHomeView(httptools.iview):
”“”
@atten:分类主页
@笔记:
- :/分类/init/
-post:无
-AN返回:{“分类”:[分类数据格式]}
”“”
def post(自我,请求):
command = commands.getClassifyinfocommand()
command.ccute()
属性= command.getResinfo()
返回httptools.jsonresponse(存在)
首先,在django视图函数中,传递obj_list = [1,2,3]这样的列表。
def show_data(请求):
obj_list = [1,2,3]
经过
返回render_to_response('index.html',{'obj_list':obj_list})
然后在index.html模板文件中,一些代码如下
选择
{obj_list%的obj%}
选项值=“ {forloop.counter}}” {{obj}}/option
{%endfor%}
/选择
这样,模板可以自动显示传递的数据。
如果您仍然不了解,这是非常详细的。访问Django的官方网站以查看该文档的相应版本。
结论:以上是首席CTO的相关内容的摘要,请注意Django如何获得前台选项数据的相关内容。希望它对您有所帮助!如果您解决了问题,请与更多关心此问题的朋友分享?