Seite 1 von 1

seltsames vorgehen im konstruktor

Verfasst: Dienstag 18. Oktober 2005, 23:30
von Gast
hallo zusammen,

folgender code erstellt dynamisch webseiten, greif auf eine db zu usw.
alles funzt wunderbar, ich werde das ganze auch mal in showcase oder codesnippets zeigen.
ich habe gerade mit cookies gespielt....
nun zum problem, zuerst der ganze code, dann der fokus auf das problem

Code: Alles auswählen

class TSite:  

    
    def __init__(self):
        
        self.tablewrapper=tableWrapper.TableWrapper()
        self.tablewrapper.connect('MySQL','localhost','user','db','pw')



    
class TMenuSite(TSite,Site):

    
    """TMenuSite wird von checklogin.py aufgerufen"""
    
    content='''<form method="get" action="../cgi-bin/gettable.py">
            <p class="text">Bitte Klasse auswählen:</p>
            <table>
            %s
            %s
            </table>
            <input type="Submit" value="öffnen">
            </form>'''

    
    def __init__(self):

        import Cookie
        self.cookie=Cookie.SimpleCookie()   
        self.cookie["login"]="yes"    

        TSite.__init__(self)

        self.db_tables=self.tablewrapper.getTableNameList()
        self.list_data(self.db_tables)


        



    def list_data(self,result):

        result=['<tr><td><input type="radio" name="db_table" value="%s">'%element+element+'</td></tr>\n' for element in result]
       
        table_content=""
        for element in result:
            table_content=table_content+element

        self.content=self.content%(table_content,self.cookie)
        print self
nochmal der konstruktor: stehen alle cookie anweisungen vor dem aufruf des konstruktors der elternklasse klappt alles, d.h. Set-Cookie: login=yes; wird schön eingefügt.

sieht der konstruktor so aus, gibts keine fehlermeldung, aber Set-Cookie bla bla bla wird nicht eingefügt:

Code: Alles auswählen

    def __init__(self):

        import Cookie
        self.cookie=Cookie.SimpleCookie()   
        

        TSite.__init__(self)

        self.db_tables=self.tablewrapper.getTableNameList()
        self.list_data(self.db_tables)
        self.cookie["login"]="yes"
und sieht der konstruktor wie folgt aus, gibts noch die nachstehende fehlermeldung:

Code: Alles auswählen

    def __init__(self):

        import Cookie
        self.cookie=Cookie.SimpleCookie()   
        

        TSite.__init__(self)

        self.db_tables=self.tablewrapper.getTableNameList()
        self.list_data(self.db_tables)
        self.cookie=Cookie.SimpleCookie() 
        self.cookie["login"]="yes"

Code: Alles auswählen

Traceback (most recent call last):
  File "C:/Programme/Apache Group/Apache2/cgi-bin/sites.py", line 615, in -toplevel-
    f=TMenuSite()
  File "C:/Programme/Apache Group/Apache2/cgi-bin/sites.py", line 429, in __init__
    self.list_data(self.db_tables)
  File "C:/Programme/Apache Group/Apache2/cgi-bin/sites.py", line 446, in list_data
    self.content=self.content%(table_content,self.cookie)
AttributeError: TMenuSite instance has no attribute 'cookie'
wer kann mir das erklären?

vielen dank im voraus

rolgal

Verfasst: Dienstag 18. Oktober 2005, 23:35
von Gast
:D :roll:

die frage soll bitte niemand beantworten!!! ich kann ja so ein hornochse sein,

loooooooooooooooool, es wird zeit schlafen zu gehen,

der titel hätte wohl besser lauten sollen:

"seltsames vorgehen in rolgal's oberstübchen"

bis bald

rolgal