模板中的Django dict

我正在尝试访问模板中的一些数据。我不认为我现在的工作方式是最好的方法,但是我什至无法以其他任何方式使它工作一半。

def room(request, room_id):
        #get room data
        room = Room.objects.filter(id=room_id).get()
        modules = []
        #pull all actuator devices for the room
        actuators = Device.objects.filter(room_id=room_id,type="actuator")
        #build a list of modules then use set to remove duplicates
        for actuator in actuators.values():
                module = Module.objects.get(module_id=actuator["module_id"]).name_only()
                modules.extend([module])
        modlist = list(set(modules))
        moduleData = {}
        #loop through the modules, pull out the required data and send it all off to the template
        for module in modlist:
                data = Module_List.objects.get(name=module)
                dict = {"name": data.name, "widget_mqtt_js": data.widget_mqtt_js, "widget_setup_js": data.widget_setup_js, "widget_body": data.widget_body}
                moduleData[module] = dict
                print dict["widget_mqtt_js"]
        context = {"room_name" : room.name, "actuators" : actuators, "modules" : moduleData}
        return render(request, 'control/room.html', context)

这是我目前的代码。我遇到的问题是模板中的循环返回空白。看起来像这样:

 {% for module in modules %}
     {{module.widget_mqtt_js}}
 {% endfor %}

我认为使用Module_List模型可以做到这一点,但我也无法做到这一点。

托马斯·奥罗斯科(Thomas Orozco)

modules在模板上下文中是moduleData在您的视图代码中。但是moduleDatadict,并且迭代一个dictyield会生成其键,而不是其值。

您需要遍历值,请尝试:

{% for module in modules.values %}
    {{module.widget_mqtt_js}}
{% endfor %}

本文收集自互联网,转载请注明来源。

如有侵权,请联系[email protected] 删除。

编辑于
0

我来说两句

0条评论
登录后参与评论

相关文章

来自分类Dev

模板中的Django dict

来自分类Dev

模板中的Django dict键

来自分类Dev

使用Django模板中的for循环检查dict中的值

来自分类Dev

dict zip 键值 django 模板

来自分类Dev

在dict值python中访问dict

来自分类Dev

下拉式Django中dict的值

来自分类Dev

流星:在子模板中访问反应式dict变量

来自分类Dev

KeyError:dict中的nan

来自分类Dev

Python中的Union dict

来自分类Dev

dict中“ in”的异常行为

来自分类Dev

在Django中形成POST dict时,请求中的主体被忽略

来自分类Dev

将python dict传递给模板

来自分类Dev

Django 模板化邮件“dict”对象没有属性“get_host”

来自分类Dev

Scrapy。在解析结果中创建复杂结构(dict中的dict)

来自分类Dev

Python-列表中的Dict嵌套在Dict中

来自分类Dev

python中的OrderedDict vs Dict

来自分类Dev

python中的基本Dict操作

来自分类Dev

dict理解中的多个键值对

来自分类Dev

Python在dict中解析值

来自分类Dev

python中的基本Dict操作

来自分类Dev

TypeError:不可排序的类型:heapq中的dict()<dict()

来自分类Dev

如果x在dict.iterkey()中,则y是dict.value

来自分类Dev

通过dict中的多个键对dict进行排序

来自分类Dev

递归测试dict是否包含在dict中

来自分类Dev

检查dict键是否在dict的列表(元组)中

来自分类Dev

别名Django QuerySet.values调用中的dict键

来自分类Dev

Django:在values()dict中包含预取的对象

来自分类Dev

如何使dict(a_instance_of_a_subclass_of_dict)在Python 2.7中成为常规dict?

来自分类Dev

掌舵模板中的default(dict).Values.outer.inner语法是什么意思?