[英]Django not auto populating current user foreign key
我正在從前端向我的數據庫中插入條目,但當前登錄的用戶外鍵沒有填充。 它輸入為 null。
這是我的 model:
from django.db import models
from django.contrib.auth.models import User
# Create your models here.
class WordsAndPhrases (models.Model):
word_or_phrase = models.CharField(max_length=20000)
created_at = models.DateTimeField(auto_now_add=True)
updated_at = models.DateTimeField(auto_now=True)
added_by = models.ForeignKey(User, null=True, on_delete=models.DO_NOTHING)
def __str__(self):
return self.word_or_phrase
這是我的views.py 代碼片段。
def upload(request):
if request.method == 'POST':
wordOrPhrase = request.POST['word-or-phrase']
currentUser = request.user
print(currentUser)
newEntry = WordsAndPhrases(word_or_phrase = wordOrPhrase)
addedBy = WordsAndPhrases(added_by = currentUser)
newEntry.save()
return render(request, 'display_words_phrases_app/upload.html')
提前致謝。
您需要在 model 中定義一個 id 鍵
id = models.AutoField(primary_key=True, )
您正在創建兩個條目對象。 當你創建一個新的 object 時,你應該像這樣插入word_or_phrase
和added_by
:
def upload(request):
if request.method == 'POST':
wordOrPhrase = request.POST['word-or-phrase']
currentUser = request.user
print(currentUser)
newEntry = WordsAndPhrases(word_or_phrase = wordOrPhrase, added_by = currentUser)
newEntry.save()
return render(request, 'display_words_phrases_app/upload.html')
您添加的addedBy
沒用。
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.