从另一个类创建一个类的实例

从另一个类创建一个类的实例

我创建了名为“bdrMenuView”的 browserView 类。它应该像“class bdrMenuView(BrowserView):”。并且该类包含名为“createPictMenu”的方法。整个类应该是

    class bdrMenuView(BrowserView):
              def createPictMenu(self):

现在我又写了一个名为 LogoViewlet 的类。它应该像“class LogoViewlet(ViewletBase):”。并且该类包含名为“update”的方法。整个类应该是

    class LogoViewlet(ViewletBase):
              def update(self):

现在我想从另一个类调用 browserView 类的方法。我创建了一个类的实例,如下所示

    class LogoViewlet(ViewletBase):
              def update(self):
                   a = bdrMenuView(self,BrowserView)      ---------> instance of BrowserView class
                   logoName = a.createPictMenu() 

我想知道我创建的是否正确。

答案1

从另一个类创建实例类

class LogoViewlet(ViewletBase):
          def update(self):
               a = bdrMenuView(self,BrowserView)   --->>>> this is wrong. no need to pass BrowserView as a parameter   
               logoName = a.createPictMenu() 



class LogoViewlet(ViewletBase):
          def update(self):
               a = bdrMenuView(self.context,self.request) --->>>> this is the correct way to create an instance of one class     
               logoName = a.createPictMenu() 

相关内容