我正在使用 Django 1.3 alpha 创建一个包含两个应用程序的项目。由于基于类的 View ,我使用 1.3。对于这两个应用程序,我有一组通用的基本 View 类,它们由应用程序中的实际 View 继承。在基类中,有没有办法找出 View 是从哪个应用程序“调用”的?例如。我可以使用 URL 获取“当前”应用程序吗?
最佳答案
如果您从 django 提供的通用列表和详细 View 继承,您可以访问 self.model
访问 View 显示信息的模型,否则你可能会使用 django's resolve() :resolve(self.request.path)
.
您也可以自己制作 View
您使用您选择的关键字调用的子类:
# views.py
from django.views.generic.base import View
class MyView(View):
app_name = None
# urls.py
from django.conf.urls.defaults import *
from some_app.views import MyView
urlpatterns = patterns('',
(r'^myview/', MyView.as_view(app_name='app_name')),
)
然后你应该可以通过
self.app_name
访问它.
关于django - 如何在 Django 中获取当前应用程序,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/4256295/