0
我想知道是否有可能像做以下Django的外鍵的新模型實例作爲默認
class ModelA(models.Model):
my_field = models.ForeignKey('UniqueKey', to_field='key' default=UniqueKey.create(key=KeyGen()))
# KeyGen() returns a new random key
從本質上說,我有一些有一個唯一的32位密鑰作爲一個模型他們的領域。我創建了UniqueKey
模型來管理所有這些密鑰,並確保不會出現重複。我試圖做的是創建一個新的UniqueKey
實例,並在創建新的ModelA
實例時將其保存到數據庫。
這是可能的還是我只是在這個錯誤的方式?
@MosesKoledoye你的意思是這將是一個糟糕的形式,有一個數據庫條目,就像一個捕獲所有,然後有一個外鍵的默認值是該捕獲所有條目的ID? –
如果默認值在遷移時可序列化,它應該可以工作。看看這個:https://docs.djangoproject.com/en/1.9/topics/migrations/#serializing-values –
@MosesKoledoye ahhhhhh,我忘記了默認值實際上將成爲數據庫中的默認值並且數據庫不會知道如何創建新的模型實例。 –