1
爲ForeignKey
的命名約定與連接model
的小寫版本命名,下面是從文檔採取:蟒蛇Django的名字convetions
class Car(models.Model):
manufacturer = models.ForeignKey(Manufacturer)
# ...
class Manufacturer(models.Model):
# ...
pass
,但我有以下型號:
class Work(models.model):
class = models.ForeignKey(Class)
#...
class Class(models.model):
#...
pass
正如我們所知,這會引發錯誤,因爲我們無法將變量設置爲class
,因爲它已內置到python中。
問:
不會遵循命名約定實際上是在SQL數據庫創建一個問題嗎?
例如:
class Work(models.model):
cls = models.ForeignKey(Class)
#...
class Class(models.model):
#...
pass
將具有不同ForeignKey的名字搞亂了SQL表和數據庫的建立?
'cls'也是一種常見的收縮 – alko
好的,這是真的,請看我在編輯部分的問題,並請回答。我只是很好奇 –
出於同樣的原因,我會將類名從'Class'更改爲其他名稱。但是,'foo = models.ForeignKey(bar)'一般來說沒問題(儘管可能比必要的更混亂)。 – thumbtackthief