0

我在 Django 中编写了一些视图,它们实际上只是 python 函数。我很好奇是否有更好的方法来安排我的文件。

它这个...

import a, b
def x(request): return a(request)
def y(request): return b(request)

比把它放在两个文件中效率低?

import a
def x(request): return a(request)

import b
def y(request): return b(request)

由于对于每个请求,只会调用其中一个函数,因此在我看来,将另一个放在同一个文件中并导入另一个需要的所有模块是一个坏主意。我对吗?无论如何,django 是否只导入了全部内容?

4

4 回答 4

3

除非您通过 CGI 运行 Django(我真的希望您不是这样),否则导入将在第一次执行后被缓存,整个论点毫无意义。

于 2010-11-11T21:25:32.087 回答
2

没有太大的区别,使用最易读的。

于 2010-11-11T21:18:25.103 回答
0

另外,不要这样做:

def x(request): return a(request)

调用原始函数可能会更好。

于 2010-11-11T22:31:12.927 回答
0

您无需担心使用了多少文件;性能上的差异可以忽略不计。也就是说,有更有效和更易读的方式来使用导入。

只导入你需要的;from x import *除非你真的要使用 X 中的所有东西,否则永远不要使用。不要嵌套导入;而不是import a, b,写:

import a
import b

至于您的具体问题,您应该有一个模块来代表典型的行动方案。如果您总是需要一个接一个地运行两个函数,请将它们放在同一个文件中。如果没有,请做任何对您和与您一起工作的人最有意义的事情。请记住,采用这种形式import a(而不是from x import y, z)的进口产品相对便宜。

于 2010-11-11T21:22:27.670 回答