将额外数据添加到响应对象以在模板中呈现

发布于 2024-09-04 20:42:48 字数 566 浏览 4 评论 0原文

我需要编写一个代码片段来禁用与站点某些部分的连接。管理和主页将可显示,但用户部分(使用ajax)将显示,但无法使用(在页面上设置透明div)。还有一些页面将被禁用。

我的逻辑是,我编写了一个中间件,

def process_request(self, request):
    if ayar.tonline_kapali:
        url_parcalari = request.path.split('/')
        if url_parcalari[0] not in settings.BAGIMSIZ_URLLER:
            if not request.is_ajax():
                return render_to_response('bakim_modu.html')
    else:
        return None

该代码让我可以为不在 BAGIMSIZ_URLLER 中的网址显示“站点已关闭”消息(其中包含可访问的网址),

但我不知道如何解决以下问题ajax 页面...我需要为响应设置标头或其他内容,并且需要在模板中检查它。

İ ned to write a code sniplet that enables to disable connection to some parts of a site. Admin and the mainpage will be displayable, but user section (which uses ajax) will be displayed, but can not be used (vith a transparent div set over the page). Also there is a few pages which will be disabled.

my logic is that, i write a middleware,

def process_request(self, request):
    if ayar.tonline_kapali:
        url_parcalari = request.path.split('/')
        if url_parcalari[0] not in settings.BAGIMSIZ_URLLER:
            if not request.is_ajax():
                return render_to_response('bakim_modu.html')
    else:
        return None

that code let me to display a "site closed" message for the urls not in BAGIMSIZ_URLLER (which contains urls that will be accessible)

But i do not figure out how can i solve the problem about ajax pages... i need to set a header or something to the response and need to check it in the template.

如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。

扫码二维码加入Web技术交流群

发布评论

需要 登录 才能够评论, 你可以免费 注册 一个本站的账号。

评论(1

无妨# 2024-09-11 20:42:48

这里process_view的文档
使用方法很简单。 process_view 在 Django 调用视图之前被调用,并获得一些参数:
request - 请求对象
view_func - 查看函数
view_args - 参数
view_kwargs - 关键字参数

您需要哪个示例?

here documentation for process_view
Usage is simple. process_view is called just before Django calls the view, and get few arguments:
request - Request object
view_func - View function
view_args - Arguments
view_kwargs - Keyword arguments

Which example do you need?

~没有更多了~
我们使用 Cookies 和其他技术来定制您的体验包括您的登录状态等。通过阅读我们的 隐私政策 了解更多相关信息。 单击 接受 或继续使用网站,即表示您同意使用 Cookies 和您的相关数据。
原文