我升级到 django v3.1 并突然收到此错误:
字段 'id' 需要一个数字,但得到 <SimpleLazyObject: '23'>。
失败的代码行是这样的:
my_obj = get_object_or_404(MyModel, pk=kwargs.get('pk'))
有什么想法我可能做错了吗?
谢谢!
我升级到 django v3.1 并突然收到此错误:
字段 'id' 需要一个数字,但得到 <SimpleLazyObject: '23'>。
失败的代码行是这样的:
my_obj = get_object_or_404(MyModel, pk=kwargs.get('pk'))
有什么想法我可能做错了吗?
谢谢!
经过一番谷歌搜索后,我发现了 Aaron O. Ellis 的这篇文章。
诀窍不是kwargs
直接使用,而是从视图类中使用self
:
my_obj = get_object_or_404(MyModel, pk=self.kwargs.get('pk'))
希望这对其他人也有帮助。