gpt4 book ai didi

python - 在django中显示列表第一个元素的属性

转载 作者:行者123 更新时间:2023-12-01 09:15:47 25 4
gpt4 key购买 nike

所以我试图在 django 模板中显示列表中第一个对象的第一个属性。我目前已经尝试过

{{objArray.0.name}}

{{objArray.0.getName}}

在我的模板中

类 ObjInfo():
def __init__( self ,名字):
self.name=名字
def getName(自身):
返回 self.name

是我的类定义。我对变量进行了硬编码,以便根据任何请求进行声明,但我将其打印出来以确保它已声明。当我运行服务器后转到该页面时,没有任何内容填充。请帮忙。

编辑: View 部分如下(来自模板):

<button class="accordion">Obj Info</button>
<div class="panel">
<div class="panel-table">
<table id="Obj" style="width:100%">
<tr>
<th>Obj Description</th>
</tr>
<tr>
<td>{{objobjArray.0.name}}</td>
</tr>
</table>
</div>
</div>

表格中还有一些我省略的部分,它们现在是静态的,但这就是要点。

抱歉,半新,给你:

    '''
Created on Jul 9, 2018

@author: packawd
'''

from django.http import HttpResponse
from django.shortcuts import render_to_response,render
from django.template import Context, loader
from django import forms


template_name='App Template.html'

class TicketForm(forms.Form):
ticketNumber=forms.CharField(label="Ticket number", required=False)
assetSerial=forms.CharField(label="Asset S/N")
RadioSerial=forms.CharField(label="Radio S/N")

#Will be used to setup API injection, create object arrays and pass on
#class asassasasasa():
class objInfo():
def __init__(self,name):
self.name=name
def getName(self):
return self.name
def index(request):

if request.method =="POST":
form=TicketForm(request.POST)
if form.is_valid():

#Simple check to see if we are pulling data correctly
"""
print(form.cleaned_data['ticketNumber'])
print(form.cleaned_data['assetSerial'])
print(form.cleaned_data['RadioSerial'])
"""
#Data injection test pt 1
#obj="engine69420"
objobj1=objInfo("Engine1")
objobj2=objInfo("Engine2")

objobjArray=[]
objobjArray.append(objobj1)
objobjArray.append(objobj2)
#Allows us to use the above fields to call an API or something
#We need to switch the below to be CAT endpoint and secure the API
#response = requests.get('http://freegeoip.net/json/%s' % ip_address)
#geodata = response.json()
else:
form=TicketForm()
objobj1=objInfo("Engine1")
objobj2=objInfo("Engine2")
objobjArray=[]
objobjArray.append(objobj1)
objobjArray.append(objobj2)
return render(request, template_name, {'form': form, 'objobjarray':objobjArray,})

最佳答案

看起来您在创建上下文 objobjarray 时使用的名称与您在模板 ecmobjArray 中使用的名称不匹配。

关于python - 在django中显示列表第一个元素的属性,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/51272480/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com