django - 如何在 Django 中获取当前应用程序

标签 django

我正在使用 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/

相关文章:

python - 将数据从数据表传递到模态 django

python - 如何为某些 Django Rest Framework View 启用@cache_page?

html - 在移动设备的 Django 中将 domainname.com 网站重定向到 m.domainname.com

django - 使 Django 为 TextField 而不是 textarea 构建 contenteditable div

python - 'AdminSite' 对象没有属性 'root'

python - 上传项目后在github上的django项目中隐藏 key

python - Django 嵌套事务和异常

django - 在 SSL Conf 之后。返回 "welcome to nginx!"

Django:查询时显示选项 "verbose"名称(并且选项位于相关模型中)

html - 如何让我的 Django 表单保存图像?