[django]怎么实现字段的联动呢

2015-04-12 22:56:32 +08:00
 pythonee
假设存在以下model

class model():
type = charField(chioics={"按里程计价","按时间计价"})
distance = integerField()
during = decimalField()


有两种计价方式,type显示为下拉框,现在想根据下拉框不同的值,也即是不同的计价方式,填写不同的属性,就是说,当选择“按里程计价”时,就只看到distance这个字段,during就隐藏,而“按时间计价”被选择市,distance就隐藏,这里有种想实现动态显示field_set的感觉
2764 次点击
所在节点    Python
4 条回复
twor2
2015-04-12 23:52:06 +08:00
新手的一点思考

在模板 html 里面用
<% ifequal type '按里程计价' %>
<div class='distance'></div>
<% endifequal %>

<% ifequal type '按时间计价' %>
<div class='during'></div>
<% endifequal %>

但下拉框选,type 怎么赋值?

估计不是django 的问题,而是js的问题
tidewind
2015-04-13 00:00:10 +08:00
两个做法

1:如果对价格实时性要求较高可以在view里接受页面提交的计价类型,对model里进行查询,页面select时发起ajax请求

2:在view时将两种计费方式都render到页面上,可以存储到隐藏域或者js变量里,然后在select时分别显示这两个值

一般情况下建议第二种,性能好一些。
mornlight
2015-04-13 00:14:27 +08:00
我怎么感觉你说的效果是js 的任务
14
2015-04-13 00:33:21 +08:00
AngularJS

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

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

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

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

© 2021 V2EX