要使用FormPreview我应该将其子类化并将其用作View(?)。但FormPreview
不是一种观点。这是如何运作的?
FormPreview有很多方法。他们在哪里打电话?例如post_post
。它永远不会在FormPreview类中被调用,它不会被django调用。或者至少我的grep -inRI post_post
没有找到它的用法。这有什么作用?
如果我在process_preview(子类和重写方法)中设置了self.number = 42
之类的属性,那么我可以在done
- 方法中访问它。所以我想我正在研究同一个对象。但我不知道对象生命周期是如何工作的。有人可以解释一下吗?
答案 0 :(得分:1)
视图可以是任何可调用的 - 并且根本不需要是类,如在基于函数的视图中那样。在这种情况下,可调用对象是FormPreview类的一个实例:它是可调用的,因为该类定义了__call__
方法。
post_post
方法 - 以及preview_get
等其他方法 - 在line 30中调用,它根据阶段和请求方法动态查找要调用的方法。