从django项目调用python脚本

时间:2013-11-11 18:33:03

标签: python django

我正在通过https://docs.djangoproject.com/en/dev/intro/tutorial03/。在此讨论调用视图并将URL连接到视图。这也适用于django应用程序或不包含视图的脚本吗?

让我们假设如果我有一个名为'myapp'的应用程序,其中包含一个名为'myscript'的脚本,我假设我会做类似的事情

的myapp / urls.py

from django.conf.urls import patterns, url
from myapp import myscript

urlpatterns = patterns('',
    url(r'^$', ???myscript???, name='myapp')
)

这是否符合最佳实践,或者如果不符合我应如何从django项目中调用脚本

2 个答案:

答案 0 :(得分:5)

Django视图没有什么特别之处:它只是一个接受请求并返回响应的函数(或其他可调用的)。对函数的位置,它的名称,调用它的模块,它是否在Django应用程序中,或其他任何内容都没有限制。

也就是说,如果你的“脚本”是一个不能做这些事情的函数,你可能想要一个单独的视图,它会调用你的单独函数。同样,您只需在视图文件中导入它,然后直接在视图中调用它。

答案 1 :(得分:2)

Django期望一个函数处理特定的url并使用一些约束:

  • 传递的第一个参数是HttpRequest object
  • 该函数必须返回适当的HttpResponse对象。

函数在views.py或任何其他python文件中的位置无关紧要。