我在Django(1.10.5)/ Python 3.4中創建了我的第一個應用程序。我有一個登錄頁面和一個註冊頁面。哪個工作正常。當我點擊提交按鈕時數據沒有插入數據庫
我可以創建新用戶並使用該ID登錄。現在登錄後,我希望用戶填寫一些信息並點擊提交。信息應該存儲在數據庫中。
所以我創建了一個模型,第一:Model.py
class UserInformation(models.Model):
firstName = models.CharField(max_length=128)
lastName = models.CharField(max_length=128)
institution = models.CharField(max_length=128)
institutionNumber = models.CharField(max_length=128)
cstaPI = models.CharField(max_length=128)
orchidNumber = models.CharField(max_length=128)
這已經創造了一個表在數據庫中。
forms.py
class UserInformationForm(ModelForm):
class Meta:
model = UserInformation
fields = '__all__'
views.py
def home(request):
form = UserInformationForm()
variables = { 'form': form, 'user': request.user }
return render(request,'home.html',variables)
home.html的
{% extends "base.html" %}
{% block title %}Welcome to Django{% endblock %}
{% block head %}Welcome to Django{% endblock %}
{% block content %}
<p> Welcome {{ user.username }} !!! <a href="/logout/">Logout</a><br /><br /> </p>
<form method="post" action=".">{% csrf_token %}
<table border="0">
{{ form.as_table }}
</table>
<input type="submit" value="Submit" style="position:absolute"/>
</form>
{% endblock %}
但是當我點擊子mit按鈕,它不會將數據插入到我的表中。
您沒有收到視圖上的信息。你如何期望它將其插入到數據庫中?閱讀關於在Django中處理request.POST'的更多信息 – karthikr
我只是想將這些信息放在我的數據庫中..我認爲這將是直接的。 –
是的,它很直接,但你需要在視圖中處理它。在這裏閱讀更多:https://docs.djangoproject.com/en/1.10/topics/forms/#the-view – karthikr