我需要以
的格式向模板发送一些数据template_name: RTR-01
device_name: EDGE
templte_name: RTR-02
device_name: EDGE
template_name: SW-01
device_name: CORE
等等。
我知道我不能使用列表,因为它们只允许一个值,一个类最适合吗?以及我如何动态创建课程?此数据也不会存储在动态构建的数据库中
编辑:
下面的动态数据的当前配置,我采用格式为STR-RTR-01的模板名称,然后我将位置名称放在中间以制作STR-UK-RTR-01。在我的字典中,我需要前后结果,如何以这种方式动态创建字典?
showroom_devices = []
for item in config_templates:
if item['device_name'].startswith("STR-"):
device = item['device_name']
completed_device_name = device[:4] + modelShowroom.location.upper()[:4] + "-" + device[4:]
showroom_devices.append(completed_device_name)
由于
答案 0 :(得分:1)
您可以将数据存储在词典列表中:
data = [
{
"template_name": "RTR-01",
"device_name": "EDGE"
},
{
"template_name": "SW-01",
"device_name": "CORE"
},
]
然后,您需要通过覆盖render_to_response
方法来更新模板的上下文。
def render_to_response(self, context, **kwargs):
context.update({"data": data})
return super().render_to_response(context, **kwargs)
然后你可以在模板中进行迭代
<ul>
{% for item in data %}
<li>{{item.template_name}}</li>
<li>{{item.device_name}}</li>
{% endfor %}
答案 1 :(得分:0)
list
dict
似乎最合适:
context = [
{
'template_name': 'RTR-01',
'device': 'EDGE',
},
{
'template_name': 'RTR-02',
'device': 'EDGE',
},
{
'template_name': 'SW-01',
'device': 'CORE',
},
]
当您想要将行为与数据相关联时,可以使用类,而这似乎并非如此。