在这种情况下,什么是 eval 的替代方案



我很不擅长清楚地陈述我的问题。不好意思。

基本上,我有许多视图函数,其功能非常相似。其中一部分是使用 reverse .但是,这些视图函数中的每一个都执行不同的reverse,因此我无法在新的"通用视图"中一一编写它们。这太疯狂了。

当时,我正在尝试减少我正在编写的重复代码的数量(超过500行重复!!!!)

为了解决这个问题,我有几个辅助函数,其中一个是在给定的任何视图函数和传递给帮助函数的任何参数上评估reverse

def render_reverse(f, args):
    return eval(...)

eval是邪恶的,而且是缓慢的。eval有什么替代品吗?在 Django 中解决这个问题的更好方法?

谢谢。

为什么首先需要eval?只是正常打电话给reverse()

return reverse(f, *args)

*允许您将参数列表解压缩为实际参数。


也就是说,你为什么需要这个帮手呢?为什么不把return reverse(...放在你看来呢?

最新更新