Most of the time, you don't actually need your multi-column key to be the primary key.
Django operates best with surrogate keys - that is, it automatically defines an autoincrement field called id
and sets that to be the primary key. That suits for almost all uses.
If you then need to enforce a unique constraint on your model across two or more fields, you can use the unique_together
setting in the inner Meta
class.
与恶龙缠斗过久,自身亦成为恶龙;凝视深渊过久,深渊将回以凝视…