簡體   English   中英

如何在views.py中創建模型的實例?

[英]How do I create an instance of a model in views.py?

很抱歉,如果這是一個愚蠢的問題,但是我在尋找如何在視圖內部創建模型的新實例時遇到了麻煩。

參考這個問題 ,我嘗試做

foo = FooModel()
save()

但我收到一個NameError:未定義名稱“保存”。 然后我嘗試

bar = BarModel.objects.create()

但出現AttributeError:“ Manager”對象沒有屬性“ Create”。

我不是很了解瑣碎的東西嗎? 也許這些命令僅用於命令行? 在這種情況下,如何從代碼中創建新對象或對其進行篩選等?

對於第一個示例,您需要在對象上調用save方法,例如foo.save()而不是save()

foo = FooModel()
foo.save()

您的第二個示例看起來還可以。 確保您正在調用create() (全部為小寫):

bar = BarModel.objects.create()

消息... no attribute 'Create'. 建議您調用BarModel.objects.Create() ,這是不正確的。

如果仍然無法解決問題,請使用實際代碼和完整的追溯更新您的問題。 使用像FooModel這樣的FooModel名稱將使問題更難發現。

save是實例的方法,應為:

foo = FooModel()
foo.save()

要從模型中創建對象的新實例,您需要執行以下操作:

models.py

class Test(models.Model):
    id = models.AutoField(primary_key=True)

views.py

test = Test()

您還可以使用構造函數:

test = Test(id=3)
test.save() # save object to database
test.objects.filter(id=3) # get object from database

暫無
暫無

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

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