python红色的颜色表达式_基于表达式的django表单元格颜色

Python2.6,Redhat6.3上的Django 1.3.1

在Django中,我如何根据表单元格的值来改变它的背景颜色,比如如果它超过10它是红色的,在7到9之间是橙色,低于7是绿色等等。。在

数据来自非django数据库/模型。在

我使用一个标准模板来迭代表,但是使用一个自定义模板就没有问题了。在

我看到了以下内容

这涉及到改变细胞的颜色,但它似乎是基于一个具体的细胞值,而不是在一个范围内。在

对视图使用以下测试代码def dashboard(request):

if request.user.is_authenticated():

user = request.user.first_name

else:

return redirect('/bcpm/login')

table_headers = ['Colmun1','Column2','Column3']

table_data = [['test1',2,3],['test2',2,4],['test3',5,5]]

page_title = 'Dashboard'

template_dict = {'header_list':table_headers, 'page_title':page_title,

'results':table_data,'username':user}

return render_to_response('dashboard.html',template_dict)enter code here

以及以下通用表模板:

^{pr2}$

谢谢。在

几乎解决了

在下面布莱恩巴克的帮助下,我想出了以下办法:,

在视图中:def dashboard(request):

if request.user.is_authenticated():

user = request.user.first_name

else:

return redirect('/login'

table_headers = ['Column1','Column2','Column3']

table_data = [['name','thing',8],['name','thing',5]]

page_title = 'Dashboard'

template_dict = {'header_list':table_headers, 'page_title':page_title,

'results':table_data,'username':user}

return render_to_response('dashboard.html',template_dict)

在模板中

{% for item in header_list %}

{{ item }}

{% endfor %}

{% for element in results %}

{{ element.0 }} {{ element.1 }}

{% if element.3 > 7 %}

{{ element.3 }}

{% else %}

{{ element.3 }} {% endif %}

{% endfor %}

{% endif %}

我真的不能让它做{%if或%}

当我试着让它做一个

“大于或等于7或小于或等于8”

对于大于7的数字,它总是对该表达式求值,即使对于大于9的值,第一个if语句也应为true。在

我使用的是django1.3,我认为if/else和多重评估可能有一些局限性,不管怎样,我都有80%使用红色/绿色两个值,这对目前来说已经足够好了。在

谢谢大家。在

让它像这样工作{% for element in results %}

{{ element.0 }} {{ element.1 }} {{ element.2 }} {{ element.3 }}

{% if element.4 > 8 %}

{{ element.4 }}

{% else %}{% if element.4 > 8 or element.4 >= 5 %}

{{ element.4 }}

{%else %}{% if element.4 < 5 %}

{{ element.4 }}

{% endif %}{% endif %}{% endif %}

{{ element.5 }}

如果您有一个支持elif的Django版本,或者添加了一些可以扩展Django安装的Django代码段,则不需要这样做。在

万岁。在

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值