小编Kul*_*shi的帖子

在多重继承的情况下,super方法如何在python中工作?

超级方法如何在python中实际运行?

在给定的代码中:

class A(object):
    def test(self):
        return 'A'


class B(A):
    def test(self):
        return 'B->'+super(B, self).test()


class C(A):
    def test(self):
        return 'C'


class D(B,C):
    pass


print B().test()    # B->A
print D().test()    # B->C  ????

# MRO of classes are as
print 'mro of A', A.__mro__   # [A,object]
print 'mro of B', B.__mro__   # [B,A,object]
print 'mro of C', C.__mro__   # [C,A,object]
print 'mro of D', D.__mro__   # [D,B,C,A,object]
Run Code Online (Sandbox Code Playgroud)

test在D上调用时,它输出B->C而不是B->A(我期待的).

B中的超级内容如何引用C的实例?

python oop inheritance multiple-inheritance method-resolution-order

8
推荐指数
1
解决办法
162
查看次数

查看 Django 模板中的所有对象

在这个 django 函数中

def request(request):
    args = {"name": "name", 'message': "message"}
    return render(request, 'request.html', args)
Run Code Online (Sandbox Code Playgroud)


模板将获取 {{name}} 和 {{message}} 变量...但是除了这两个变量之外,还可以访问模板上的 {{user}} 和 {{LANGUAGES}} 对象,这些对象由中间件在 RequestContext 中设置。

有没有办法显示/渲染通过我的自定义响应或任何中间件(例如请求客户端的 IP 地址和其他信息)发送到模板的每个对象/变量。

python django templates

5
推荐指数
1
解决办法
3829
查看次数