请教个 django Httpresponse 返回值的问题。

2015-09-08 10:13:48 +08:00
 Anybfans

现在前台页面用的$.post 方法向后台发送 post 请求。

后台需要 renturn httpresopnse 一个 django queryset 对象。
可是到了前台。类型就变为了 string 。无法使用模型的一部分方法。

JSON 对象返回的话 也是无法使用模型的一部分方法。请问有什么解决方法吗?

4671 次点击
所在节点    Python
11 条回复
Anybfans
2015-09-08 10:14:11 +08:00
惨痛 2 小时
Anybfans
2015-09-08 10:17:06 +08:00
还有 django model.values () 原来只能用于 queryset 。。 一个对象貌似不能用.values
Anybfans
2015-09-08 10:32:49 +08:00
sciooga
2015-09-08 10:39:43 +08:00
我记得不是 JSON 之类的数据类型好像都是返回字符串的…

问题不太清楚,你是想在 js 里用 Python 定义的方法吗?不行的……
Anybfans
2015-09-08 10:48:30 +08:00
@sciooga 现在就是想用 get 请求和 post 渲染相同的页面和不同的数据。算了 这个思路比较乱。。换个思路吧。全用 get 请求貌似方便点。嘿嘿 谢谢啦
chon
2015-09-08 10:53:36 +08:00
js 是用不了 Python 的方法的。
如果你需要的是不同的数据,直接把数据封装在 json 里面传就好了。
latyas
2015-09-08 12:00:12 +08:00
return 一个 django queryset 对象是什么意思?
lyhapple
2015-09-08 13:48:44 +08:00
不能这样用的,你还没有搞清楚 django 的页面渲染, django queryset 对象需要通过 django 的模板引擎渲染。你可以使用返回 json 数据格式的方式来做。
adexbn
2015-09-08 14:48:38 +08:00
@Anybfans 需要在 template 里面才可以使用 django 的对象, http_render_to_response (模板, context 对象...)
jonnn
2015-09-08 14:55:51 +08:00
httpresponse 不能直接把对象返回给请求端的,我没理解错的话应该是是需要返回 queryset 中 model 实例的各种属性吗?你可以自己写个方法把数据丢在 json 里面返回
Anybfans
2015-09-08 14:56:54 +08:00
@adexbn
@lyhapple
@jonnn
嗯 确实不能这样。跟 @lyhapple 说的一样。没搞清楚页面渲染。换方法写了。谢谢啦

这是一个专为移动设备优化的页面(即为了让你能够在 Google 搜索结果里秒开这个页面),如果你希望参与 V2EX 社区的讨论,你可以继续到 V2EX 上打开本讨论主题的完整版本。

https://www.v2ex.com/t/219033

V2EX 是创意工作者们的社区,是一个分享自己正在做的有趣事物、交流想法,可以遇见新朋友甚至新机会的地方。

V2EX is a community of developers, designers and creative people.

© 2021 V2EX