1
我正在嘗試在學習django時寫入一個小應用程序。但是,當我嘗試在數據庫中保存表單數據時,發生了一些問題。我使用python3。 4和Django的1.8.4,我的數據庫爲MySQLDjango無法在數據庫中保存表單數據
我遇到的第一個問題是,數據庫中沒有任何數據
這是我的模型代碼:
SUBJECT_CHOICES = (
('computerscience', '計算機科學導論'),
('C-sharp', 'C#'),
('cplusplus', 'C++'),
('CCNA', 'CCNA'),
('ACM', 'ACM'),
('linux', 'linux'),
('java', 'java'),
('python', 'python')
)
class Homework(models.Model):
handin_date = models.DateTimeField('交作業時間')
subject = models.CharField(verbose_name = '課程', default = '計算機科學導論', max_length = 20, choices = SUBJECT_CHOICES)
code = models.TextField(verbose_name = '代碼', default = '')
xuehao = models.CharField(verbose_name = '學號', default = '', max_length = 9)
name = models.CharField(verbose_name = '姓名', default = '', max_length = 10)
這是我的查看代碼:
def cshomework(request):
if request.method == 'POST':
form = HomeworkForm(request.POST)
if form.is_valid():
return render(request, 'blog/success.html', { 'title': '交作業成功' })
else:
form = HomeworkForm(initial = { 'xuehao': '學號', 'name': '姓名', 'subject': '計算機科學導論', 'handin_date': dt.now(), 'code': '你的代碼' })
return render(request, 'blog/cshomework.html', { 'title': '交作業', 'form': form })
這樣沒有什麼在我的數據庫
的Seconde系列問題是,當我嘗試另一種方式,我在DATEBASE
同型號代碼
這裏是之前得到一個無值我的看法代碼:
def cshomework(request):
if request.method == 'POST':
form = HomeworkForm(request.POST)
if form.is_valid():
return render(request, 'blog/success.html', { 'title': '交作業成功' })
else:
homework = Homework.objects.create(xuehao = '學號', name = '姓名', subject = '計算機科學導論', handin_date = dt.now(), code = '你的代碼')
form = HomeworkForm(instance = homework)
return render(request, 'blog/cshomework.html', { 'title': '交作業', 'form': form })
我該如何處理這些問題? 我'真正appriciate你的幫助!
非常感謝!它解決了我的問題。但爲什麼seconde方法可以保存一些數據? – LiuQiangsheng
你也添加了form.save()呢? –
每當你獲得url,一個對象被創建,是正確的?你想創建一個新的HomeWork,每次有人訪問該URL,而不提交任何數據? –