0

私は自分の問題を明確に述べるのがかなり苦手です。ごめん。

基本的に、機能が非常に似ている多くのビュー関数があります。その一部はを使用していreverseます。ただし、これらのビュー関数はそれぞれ実行が異なるreverseため、新しい「汎用ビュー」に1つずつ書き込むことはできません。それは非常識です。

当時、私は自分が書いている重複コードの量を減らそうとしています(500行以上の重複です!!!!!)

この問題を解決するために、いくつかのヘルパー関数があります。そのうちの1つは、指定さreverseれたビュー関数とヘルパー関数に渡された引数を評価することです。

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

しかしeval、それは悪であり、遅いです。eval?の代わりに Djangoでこれを解決するためのより良いアプローチは?

ありがとう。

4

1 に答える 1

0

evalそもそもなぜそうする必要があるのですか?reverse()普通に電話しますか?

return reverse(f, *args)

を使用すると、引数リストを実際の*引数に解凍できます。


とはいえ、なぜこのヘルパーが必要なのですか?なぜreturn reverse(...あなたの見解を入れてみませんか?

于 2012-04-08T05:31:34.543 に答える