Я делаю сайт в django, и на моей домашней странице хочу показать список моего недавнего сообщения в блоге и нескольких кварталах ниже. Я хочу создать простую форму контакта. Блог и контактная форма работают отлично. Но я хочу включить их в одну страницу (очевидно, в том же URL-адресе).Django - Имею два вида в одном и том же url
views.py является:
from .forms import NameForm
def get_name(request):
if request.method == 'POST':
form = NameForm(request.POST)
if form.is_valid():
return HttpResponseRedirect('/thanks/')
else:
form = NameForm()
return render(request, 'personal/index.html', {'form': form})
Если вы хотите посмотреть на forms.py то:
from django import forms
class NameForm(forms.Form):
your_name = forms.CharField(label='Your name', max_length=100)
URLPATTERN в urls.py моей домашней странице:
urlpatterns = [
url(r'^$', ListView.as_view(
queryset=Post.objects.all().order_by("-date")[:2],
template_name="personal/index.html")),
url(r'^$', views.get_name, name='contact'),
]
С этим urlpatter список сообщений в блоге отображается отлично, но контактная форма не отображается. Но с приведенной ниже контактной формой urlpattern появляется, но сообщения в блогах не отображаются.
urlpatterns = [
url(r'^$', views.get_name, name='contact'),
url(r'^$', ListView.as_view(
queryset=Post.objects.all().order_by("-date")[:2],
template_name="personal/index.html")),
]
Я хочу, чтобы оба этих содержимого отображались на одной странице. Пожалуйста, помогите мне. Если вам нужна дополнительная информация, тогда расскажите.
на этот раз появилась контактная форма, но сообщение в блоге не появилось .... Я думаю, что это потому, что эквивалентный код в listview (и материал) в urls.py в views.py является неправильным ... Пожалуйста, помогите – Ishan
Я думаю, что он должен работать, если вы используете 'post_list' вместо' posts', как я изначально имел. Вы не показывали свой шаблон, поэтому я не знал, что такое имя переменной шаблона. – Alasdair