failing to instantiate an inner class because of order of inner classes
Pyenos
pyenos at pyenos.org
Wed Dec 27 18:19:27 EST 2006
"Edward Kozlowski" <ekozlowski1 at gmail.com> writes:
> Pyenos wrote:
> > class model:pass
> > class view:
> > model()
> > class controller:
> > model()
> >
> > I can instantiate clsss model from inside class view but I can't
> > instantiate class model from inside controller, due to the nature of
> > python interpreter.
> >
> > I wish to circumvent this restriction by:
> >
> > class model:pass
> > class view:
> > parent_class.model()
> > class controller:
> > parent_class.model()
> >
> > but, I don't know the built-in variable that points to the parent
> > class. Could someone tell me how can I instantiate class model from
> > inside controller AND instantiate class model from inside view?
>
> I would try the following:
>
> class model:
> def printFoo(self):
> print "foo"
> class view:
> def __init__(self):
> self.model = model()
> class controller:
> def __init__(self):
> self.model = model()
>
> Then you can do:
> vObj = view()
> vObj.model.printFoo()
>
> And:
> cObj = controller()
> cObj.model.printFoo()
I've made an error in the original article that you have quoted here
but I have cancelled it. However, I have understood your solution and
I think it is helpful. Thank you.
More information about the Python-list
mailing list