django - 从一个文件调用另一个文件的函数
我想在我的很多 Django 视图中重复使用一些我创建的函数,这样就不用在每个视图中反复写这些函数了。
所以我创建了一个文件夹,并在里面放了一个 __init__.py
文件。在同一个文件夹里,我还创建了一个 myfunctions.py
文件,把我想在 Django 视图中重复使用的函数放在里面。
这里有一个我在 myfunctions.py
中放的非常简单的测试函数,我想看看能否在我的视图中重复使用这个函数,特别是能否使用这个函数里的变量:
def test_function():
test_variable = 1
我想在一个视图中调用 test_function()
,并把这个函数里的变量值(在这个例子中是 1)传递到我创建的模板里。这个视图的模板里已经有一个标签 {{ test_valiable }}
。
我的问题是,当我在视图中调用 test_function()
时,模板中的 {{ test_valiable }}
标签没有显示出 test_variable
的值。
我在视图中调用函数的方式是:
test_function()
我哪里做错了呢?
2 个回答
1
你的问题不太清楚。
我觉得你可能需要使用模板标签或者上下文处理器,这要根据具体情况来决定。
3
test_variable 是一个局部变量,所以在函数执行完后你就看不到它了。
你应该把你的函数改成这样:
def test_function():
test_variable = 1
return test_variable
然后在 views.py 文件中使用它。
def View(request):
result = test_function()
return render_to_response('template', {'test_valiable' : result })