Thank you Vijay.

That link seems to be a feasible path for me to take (reproduced below).

Perhaps you or others can help me with an additional question (I am a bit 
new to both Python and Django), that I'm struggling with:
Which type of data structure is Django iterating over in the templates 
(i.e. the {% for row in row_list %} in my code example above).
Is "row" the Model object or is it some sort of dictionary / array data 
structure?
I've been browsing through the Classy CBV ListView pages to try to get hold 
of that, but I was not able to clarify this myself.

thank you, Mikkel


Create a template tag like this (in yourproject/templatetags):
@register.filter 
def keyvalue(dict, key): 
    return dict[key] 


Usage in template:

{{dictionary|keyvalue:key_variable}} 




torsdag den 14. juni 2018 kl. 00.17.26 UTC+2 skrev Vijay Khemlani:
>
> As far as I know you can't do it directly in the templating system
>
> Yo could write a template tag as described here
>
>
> https://stackoverflow.com/questions/2894365/use-variable-as-dictionary-key-in-django-template/10700142#10700142
>
> or use a different data structure, for example each row as a list of the 
> values in the order that they should appear
>
> On Wed, Jun 13, 2018 at 4:54 PM Mikkel Kromann <mik...@aabenhuskromann.dk 
> <javascript:>> wrote:
>
>> Dear Django users.
>>
>> Thanks to the good advice of many people on this list, I've managed to 
>> create some nice generic class based views that work simultaneously with 
>> many models.
>> The models may differ from each other with regards to the number of 
>> columns in their data tables as well as the naming of the columns.
>> In order to use the same ListView template for many models, I will need 
>> to iterate not only over the rows of the queries, but also the columns.
>>
>> I managed to pass a field_list into the context_data - it works as it 
>> shows nicely in the table headers.
>> However, when I iterate over the rows of the query result table, I'm not 
>> able to pinpoint the fields of the data row using the field iterator. 
>>
>> My template.html is:
>> <table>
>>     <tr>
>> {% for fields in field_list %}
>>         <th>{{field}}
>> {% endfor %}
>> {% for row in row_list %}
>>     <tr>
>>     {% for field in field_list %}
>>         <td>{{row.field}}
>>     {% endfor %}
>> {% endfor %}
>> </table>
>>
>>
>> Besides trying with {{row.field}}, I've tried with {{row}}.{{field}}, as 
>> well as {{ row.{{field}} }} (yeah, long shot ...)
>>
>> Any ideas, or should I try to create an entirely different data structure 
>> in my view, which can be parsed more easily by Django templates?
>>
>>
>> cheers + thanks, Mikkel
>>
>> -- 
>> You received this message because you are subscribed to the Google Groups 
>> "Django users" group.
>> To unsubscribe from this group and stop receiving emails from it, send an 
>> email to django-users...@googlegroups.com <javascript:>.
>> To post to this group, send email to django...@googlegroups.com 
>> <javascript:>.
>> Visit this group at https://groups.google.com/group/django-users.
>> To view this discussion on the web visit 
>> https://groups.google.com/d/msgid/django-users/c9e29d66-f93c-4fc4-ae9f-dbeae93a2e45%40googlegroups.com
>>  
>> <https://groups.google.com/d/msgid/django-users/c9e29d66-f93c-4fc4-ae9f-dbeae93a2e45%40googlegroups.com?utm_medium=email&utm_source=footer>
>> .
>> For more options, visit https://groups.google.com/d/optout.
>>
>

-- 
You received this message because you are subscribed to the Google Groups 
"Django users" group.
To unsubscribe from this group and stop receiving emails from it, send an email 
to django-users+unsubscr...@googlegroups.com.
To post to this group, send email to django-users@googlegroups.com.
Visit this group at https://groups.google.com/group/django-users.
To view this discussion on the web visit 
https://groups.google.com/d/msgid/django-users/6d443c64-0c68-412b-9eb9-0a5640aab37d%40googlegroups.com.
For more options, visit https://groups.google.com/d/optout.

Reply via email to