我有一个简短的概念性问题,我想解决。我有一个模型,在保存该模型的示例时,它将id保存为md5散列(例如“11db608cba69c0a09b4d5abde2553b56”)。
保存这个模型可以很好地工作,但是现在我试图通过创建一个新模型来保存额外的信息,该模型引用这个模型作为外键。在保存该附加模型时,出现以下错误: invalid literal for int() with base 10: '11db608cba69c0a09b4d5abde2553b56'.
做了一些搜索,我发现了一个很好的堆栈后,回答了我认为正在发生的事情。默认情况下,foreignkey字段的类型是integer。因此,它引用的任何值都必须是整数。
我希望能够定义一个使用基于str的外键(或者任何允许它使用md5散列以外的外键)的模型。这个解决方案可行吗?我唯一能想到的另一件事是基于md5生成一个整数并将其用作引用,但这似乎是一个不必要的步骤。我还发现了一些引用genericforeignkey的帖子。我有点绕不过去,但似乎我可以用这种类型,而不是外键。
你对此有何看法,谢谢你的帮助!
暂无答案!
目前还没有任何答案,快来回答吧!