我有一個聯繫表單,出現在頁腳的每個頁面的底部。我只是將它包含在底部的base.html中。現在我想找出提交它的方法。所有w provides提供的例子都是假設我有整個頁面專用於它,因此提交給自己。Django W a ajax聯繫表
這對我不起作用,因爲它不是頁面。
我寫了我認爲應該看起來像的僞代碼。
def submitContact(request):
source_email = request.POST.get('email')
name = request.POST.get('name')
message = request.POST.get('message')
if (source_email is not None) and (name is not None) and (message is not None):
body = "sample"
send_mail(
name,
message,
source_email,
['[email protected]'],
fail_silently=False,
)
然後我的形式是這樣的
<form class="form-group" role="form" method="post" action="/submitContact">
......
</form>
理想的情況下,如果有人可以指向鶺鴒資源,說明如何創建模型的端點不從頁面模型繼承和不片段維持「請求」內容,這將是有用的。理想情況下,我更喜歡將這些數據記錄到聯繫人「表」中,然後發送電子郵件。
我應該添加到我的urls.py重新路由與檢索所需的變量,因此該功能正確的上下文的請求發送電子郵件
其他信息
我包一個片段圍繞頁腳提供一些使用模板標籤的上下文,只是把它放在那裏它增加了價值
請參閱下文。
@register.inclusion_tag('home/menus/footer.html', takes_context=True)
def footers(context):
return {
'footers': Footers.objects.first(),
'request': context['request'],
}
如果你不是從Page模型繼承的,那麼關於你想要做什麼的事情沒有任何特定的W tail,所以W documentation文檔不會涵蓋這個 - 你只是寫了一個普通的Django視圖。如果你對編寫Django視圖不熟悉,請從這裏開始:https://docs.djangoproject.com/en/1.11/intro/tutorial01/ – gasman
有沒有更好的方式來處理W itself本身? – sqwale
不,可能不是。W is目的是與Django的功能集一起工作,而不是成爲其上的一層。 Django很擅長處理表單提交併將它們放入數據庫中,其中之一就是其中之一......在這些情況下,直接與Django合作絕對是正確的選擇。 – gasman