CreateView Model Objects для шаблона - PullRequest
0 голосов
/ 17 января 2020

Итак, я пытаюсь передать список объектов в мой шаблон. Я хочу, чтобы мой профиль. html отражал информацию в модели. Я нашел некоторую документацию по ListView, но ничего по CreateView. Единственное, что проходит через шаблон - это {{user.username}}. Будем благодарны за любые предложения * views.py

class VolunteerSignUp(CreateView):
form_class = VolunteerSignUpForm
success_url = reverse_lazy('login')
template_name = 'volunteer_signup.html'
#added code from answer
def get_context_data(self, **kwargs):
    context = super(VolunteerSignUp, self).get_context_data(**kwargs)
    context['profile_list'] = Volunteer.objects.all()
    return context

profile. html Вот некоторые вещи, которые я пытался донести до сведения, которые не сработали.

<ul>
    {% for volunteer in object_list %}
    <li>{{ volunteer.about_me }}</li>
    {% endfor %}
</ul>

<ul>
    {% for volunteer in profile_list %}
    <li>{{ volunteer.about_me }}</li>
    {% endfor %}
</ul>

{% if profile_list %}

{% else %}
  <p>There is no info.</p>
{% endif %}

1 Ответ

0 голосов
/ 17 января 2020

Вы можете использовать метод get_context_data () в вашем классе.

class VolunteerSignUp(CreateView):
    form_class = VolunteerSignUpForm
    success_url = reverse_lazy('login')
    template_name = 'volunteer_signup.html'

    def get_context_data(self, **kwargs):
        data = super(VolunteerSignUp, self).get_context_data(**kwargs)
        data['profile_list'] = 'your queryset goes here'
        return data
...