我沒有那麼偉大的數據庫,很抱歉,如果我不描述這個很好...Django的多對多遞歸關係
我有其描述algorithim目錄中的現有Oracle數據庫。 有兩個表algorithims和xref_alg。
算法可以有父母和子女算法。 Alg_Xref包含這兩個外鍵的關係 - xref_alg和xref_parent。
這些都是Django模型我有這麼遠inspectdb命令
class Algorithms(models.Model):
alg_id = models.AutoField(primary_key=True)
alg_name = models.CharField(max_length=100, blank=True)
alg_description = models.CharField(max_length=1000, blank=True)
alg_tags = models.CharField(max_length=100, blank=True)
alg_status = models.CharField(max_length=1, blank=True)
...
class Meta:
db_table = u'algorithms'
class AlgXref(models.Model):
xref_alg = models.ForeignKey(Algorithms, related_name='algxref_alg' ,null=True, blank=True)
xref_parent = models.ForeignKey(Algorithms, related_name='algxref_parent', null=True, blank=True)
class Meta:
db_table = u'alg_xref'
在試圖查詢AlgXref我遇到這樣的:
DatabaseError: ORA-00904: "ALG_XREF"."ID": invalid identifier
所以錯誤似乎是,它看起來一個主鍵ID不在表中..我可以創建一個,但似乎有點無意義。無論如何要解決這個問題嗎?或者改變我的模型?
編輯:所以經過一番搜索似乎Django需要一個模型有一個主鍵。生命太短,所以剛剛添加了主鍵。這會對性能產生什麼影響嗎?