我正在使用一个遗留数据库,它以 db 方式做了一些有意义的事情,但不确定如何在 Django 中表示它们,以便 South 和 Django 本身可以处理它们。
我有一个 PartCode 作为键的零件表 我有一个 VendorCode 作为键的供应商表
我有一个 PartsVendor 表,其中包含 FK 到 Parts 和 Vendor,以及有关关系的其他信息。我使用的是“through”参数,所以它独立存在,但它使用 PartCode+VendorCode 作为复合键,Django 不支持。只有在使用 South 或像 dumpdata 这样它想查看主键的函数时,我才会遇到问题。然而,这些都是相当大的问题。
我的临时解决方案是只添加一个 _id 字段作为 AutoField 并在 Postgres 中添加一个串行字段,它工作正常,但是当使用 South 时,它会因默认 = False 而 NOT NULL 为真这一事实而窒息。
我已经走上了尝试编写自定义字段的道路,但这似乎是一条死胡同,因为我实际上并没有更改有关字段类型的任何内容。