我正在通过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项目中调用脚本
答案 0 :(得分:5)
Django视图没有什么特别之处:它只是一个接受请求并返回响应的函数(或其他可调用的)。对函数的位置,它的名称,调用它的模块,它是否在Django应用程序中,或其他任何内容都没有限制。
也就是说,如果你的“脚本”是一个不能做这些事情的函数,你可能想要一个单独的视图,它会调用你的单独函数。同样,您只需在视图文件中导入它,然后直接在视图中调用它。
答案 1 :(得分:2)
Django期望一个函数处理特定的url并使用一些约束:
HttpRequest
object HttpResponse
对象。函数在views.py
或任何其他python文件中的位置无关紧要。