fbpx

Как вывести данные из изменённой модели

261 просмотра
0
0 Комментариев

помогите пожалуйста решить проблему

я переопределил в модели метод str():

class Gender(models.Model):
    gender= models.CharField(
        max_length=40,
        blank=False,
    )
 
    def __str__(self):
        return self.status
 
    @classmethod
    def get_gender_list(self):
        return self.objects.all()

views.py:

def friends_search(request):
    t = loader.get_template('friends_search.html')
    c = RequestContext(request, {
        'gender_list': Gender.get_gender_list(),
    })
    return HttpResponse(t.render(c))

template.html:

        {% for key, item in gender_list %}
            -{{ key }}-{{ item }}-
        {% endfor %}

fixtures:
[
{
«model»: «drummersaransk.Gender»,
«pk»: 1,
«fields»: {
«gender»: «Ж»
}
},
{
«model»: «drummersaransk.Gender»,
«pk»: 2,
«fields»: {
«gender»: «М»
}
}
]

проблема в том, что у меня не получается в шаблоне вывести (id, gender) через цикл. то есть сейчас в вышеприведённом коде выводится пустота


Добавить комментарий

1 Ответы

Python Опубликовано 20.03.2019
0

лень писать много букв:
self.objects.all() — выдаст массив объектов!
соответственно или меняй шаблон до вида for item in ... item.key item.value или вьюшку до вида 'gender_list': {item.key: item.value for item in Gender.get_gender_list()}, или переопределяй метод iter в модели до вида yield self.key, self.value

p.s: for key, value in range(5): pass

Добавить комментарий
Напишите свой ответ на данный вопрос.
Scroll Up