1
잘 작동하는 listview를 만들었고 내가 원하는 것을 정확하게 제공합니다.ListView 템플릿에 양식을 포함 할 수 있습니까?
이 ListView의 템플릿에서 CreateView를 가리키는 양식을 선언했습니다. 형태는,
{% if user.is_authenticated %}
<form action="{% url 'post_wall' %}" method="POST">
{% csrf_token %}
<input type='text' name='body' />
<input type='hidden' name='from_user' value='{{ user.id }}' />
<input type='hidden' name='to_user' value='{{ to_user }}' />
<input type='submit' value='POST'/>
</form>
{% endif %}
post_wall URL이
url(r'accounts/post_wall', WallCreate.as_view(), name='post_wall'),
에 양식이
url(r'accounts/wall/(?P<slug>\w+)/$', WallList.as_view(), name='wall'),
이는 CreateView를 호출입니다 포함 된 URL을 해당하므로 같다
class WallCreate(CreateView):
model = WallPost
def get_success_url(self):
url = reverse('wall', kwargs={'slug': request.POST.to_user})
return HttpResponseRedirect(url)
이것은 나를 준다
TemplateDoesNotExist at /accounts/post_wall
users/wallpost_form.html
포스트가 CreateView로 전송되면서 제대로 작동하지 않아야합니까? 아니면 내가 CBV에 대해 오해 했나요?
이 작동합니다. 목록 뷰에 대한 내용을 필터링하려면 get_queryset을 타고 넘기면됩니다. –
예, 일반적인 'ListView'처럼 사용자 정의 할 수 있습니다. –
대단히 감사합니다! –