簡體   English   中英

“django 視圖中的未知列 'user_id' 錯誤

[英]"Unknown column 'user_id' error in django view

我遇到了一個錯誤,我不確定是什么原因造成的。

這是錯誤:

Exception Type:     OperationalError
Exception Value:    
(1054, "Unknown column 'user_id' in 'field list'")

有誰知道為什么我會收到這個錯誤? 我想不通。 一切似乎都很好。

我的視圖代碼如下:

if "login" in request.session:
    t = request.POST.get('title', '')
    d = request.POST.get('description', '')
    fid = request.session["login"]
    fuser = User.objects.get(id=fid)
    i = Idea(user=fuser, title=t, description=d, num_votes=1)
    i.save()
    return HttpResponse("true", mimetype="text/plain")
else:
    return HttpResponse("false", mimetype="text/plain")

我感謝任何幫助! 謝謝!

編輯:也是一個附帶問題。 我是否使用 objects.get(id= 或 objects.get(pk= ?如果我使用主鍵,我是否需要在模型中聲明一個 id 字段或索引?

編輯:以下是相關模型:

class User (models.Model):
    first_name = models.CharField(max_length=200)
    last_name = models.CharField(max_length=200)
    email = models.CharField(max_length=200)
    password = models.CharField(max_length=200)

class Idea (models.Model):
    user = models.ForeignKey(User)
    title = models.CharField(max_length=200)
    description = models.CharField(max_length=255)
    num_votes = models.IntegerField()
  1. user_id字段是從IdeaUser的 FK 引用。 看起來你已經改變了你的模型,而不是更新你的數據庫,那么你就會遇到這種問題。

    刪除舊表,重新運行syncdb。

  2. 默認情況下,您的模型表獲得一個id字段。 您可以在查詢中將其稱為id 您也可以使用pk的同義詞。

    如果您定義自己的主鍵字段,則不會獲得自動id字段。 但是您仍然可以使用pk來引用主鍵。

您必須展示您的模型才能獲得真正的幫助,但您的 Idea 表似乎沒有 user_id 列? 您是否修改了 SQL 表結構?

是的,我放下了桌子,一切都很好。 但是,您必須實際進入數據庫並刪除它們。 “manage.py flush”或“manage.py reset appname”不會自己完成。

-尼克奧

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM