1
我正在django和我的主頁上創建一個網站我想顯示我最近的博客文章的列表,並在下面幾個街區我想製作一個簡單的聯繫表單。博客和聯繫表格分開工作正常。但我想包括他們在同一頁面(顯然在相同的網址)。Django - 在同一網址有兩個視圖
的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)
在我的主頁的urls.py URL模式是:
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")),
]
我想使這兩個內容都顯示在同一頁面中。請幫幫我。如果您需要更多信息,請告訴。
這次聯繫表單出現了,但博客文章沒有出現....我認爲它是因爲在views.py中urls.py中的listview(和stuffs)的等效代碼是不正確的...請幫助 – Ishan
我認爲它應該工作,如果你使用'post_list'而不是'posts'就像我原來那樣。你沒有顯示你的模板,所以我不確定模板變量名是什麼。 – Alasdair