테이블에 항목을 넣을 템플릿을 만들려고합니다.장고 : 배열 인덱스로 변수를 사용하고 계십니까?
컨트롤러 :
items = Item.all().order('name').fetch(10)
template_values = {'items': items,
'headers': ['Name', 'Price', 'Quantity']}
render('Views/table.html', self, template_values)
템플릿 :
<table>
<tr>
{% for header in headers %}
<th>{{header}}</th>
{% endfor %}
</tr>
{% for item in items %}
<tr><td><a href="detail/{{item.CSIN}}">{{item.name}}</a></td><td>{{item.CSIN}}</td></tr>
{% endfor %}
</table>
지금, 템플릿 하드 item
의 특정 속성을 찾기 위해 코딩된다. 이를 변경하여 이름이 headers
인 속성을 찾거나 첫 번째 n 속성을 찾습니다 (여기서 n은 headers
의 길이 임).
어떻게하면됩니까?
흠, 왜 템플릿 논리 (표시 할 열)를보기에 넣으시겠습니까? –
왜 표시 할 열을'hea 데르 '입니다. 이렇게하면 템플리트를 재사용 할 수 있습니다. 표시 할 열의 선택은 컨트롤러에서 이루어지며 컨트롤러는'header' 값을 통해 템플릿을 알려줍니다. –