所以我可以創造的Django模型是這樣的:Django模型如何工作?
from django.db import models
class Something(models.Model):
title = models.TextField(max_length=200)
,我可以用它的工作是這樣的:
thing = Something()
#set title
thing.title = "First thing"
#get title
thing.title
所有作品,因爲它應該,但我想了解它是如何工作。
title = models.TextField(max_length=200)
非Django的Python代碼上面的行
定義類型models.TextField的類變量標題和我也可以訪問它是這樣的:thing.__class__.title
(link)
但是在Django當我創造一些實例我突然有一個標題屬性,我可以獲取/設置文本。而不能訪問它thing.__class__.title
很清楚,當做thing.title我沒有訪問類變量「標題」,但一些生成的屬性/財產,或?
我知道字段以thing._meta.fields結尾,但是如何? 怎麼回事?
1,Django在幕後製作屬性「標題」嗎?
2,類變量「title」發生了什麼?
感謝鏈接到文件上的代碼。 djangoproject.com!我只是在docs.djangoproject.com尋找解釋 – Michal 2012-08-17 13:34:18
因此metacclass可以添加屬性,方法等,但是它也可以刪除屬性/方法等,因爲CharField類型的類變量標題被清除了嗎?或者不是嗎? – Michal 2012-08-17 13:37:30
@Michal當然,記住所有的python屬性都存儲在'__dict__'中。通過操作'__dict__'你可以做任何事情。 – 2012-08-17 13:38:12