我試圖保存具有自動遞增ID的模型對象,然後獲取該ID並在模板中使用它。該id不會顯示。ID不會顯示在模板上
下面是處理此提交代碼:
def process_submission(request):
if request.method == 'POST':
submission=request.POST
temp = Listing(title=submission['title'],pub_date=datetime.datetime.now(),email=submission['email'],price=submission['price'],body=submission['body'],subject=submission['subject'],course_number=submission['course_number'])
temp.save()
return render(request, 'listing/success.html', {'temp', temp})
然後success.html
<p>Submission Successful!</p>
<p>You can find your listing at: <a href="blah/{{temp.id}}">URL/{{temp.id}}</a></p>
的相關部分的ID將不會出現。我不太清楚爲什麼這不起作用。有什麼想法嗎?
謝謝。
編輯:
這裏是有問題的模式:
class Listing(models.Model):
title = models.CharField(max_length=100)
pub_date = models.DateTimeField('Date Published')
email = models.CharField(max_length=200)
price = models.CharField(max_length=20)
body = models.CharField(max_length=1500)
subject = models.CharField(max_length=4)
course_number = models.CharField(max_length=4)
def __str__(self):
return self.title
我認爲你可以在你的模板中使用'temp'作爲上下文,它將需要在'if'塊之外。如我錯了請糾正我。 – qasimalbaqali
您可以將模型添加到問題中嗎? –
如果請求方法是「POST」,那麼你的代碼幾乎可以工作100%。但是,除非您未顯示完整視圖方法,否則您未處理請求方法爲「GET」的情況。 GET請求的行爲是什麼? –