dict: __setitem__ überschreiben...
Verfasst: Montag 6. Februar 2006, 18:39
Ich wollte noch bei [wiki]Colubrid/Hello World[/wiki] anknüpfen und eine weitere Seite über Debugging mit Clubrid reinsetzten, doch mein Beispiel funktioniert gerade nicht so wirklich.
Ich bekomme ein Traceback mit: TypeError: unsupported operand type(s) for +: 'NoneType' and 'int'
Das liegt irgendwie an meiner __setitem__ Aber ich check das gerade nicht, was daran falsch ist:
Ich bekomme ein Traceback mit: TypeError: unsupported operand type(s) for +: 'NoneType' and 'int'
Das liegt irgendwie an meiner __setitem__ Aber ich check das gerade nicht, was daran falsch ist:
Code: Alles auswählen
#!/usr/bin/env python
# -*- coding: utf-8 -*-
from colubrid import BaseApplication
class preferences(dict):
def __init__(self, request):
dict.__init__(self)
self.request = request
def __setitem__(self, item, value):
self.request.write('<p>setitem: item %s - value %s</p>' % (item, value))
self[item] = value
class DebugBeispiel(BaseApplication):
def process_request(self):
self.request.headers['Content-Type'] = 'text/html'
self.request.write('<h1>Debug Demo:</h1>')
self.request.preferences = preferences(self.request)
# An Debug-Info dranpacken
self.request.exposed.append("preferences")
# Daten einfügen
self.request.preferences["test1"] = "1"
self.request.preferences["test2"] = "2"
# Debug-Seite aufbauen
self.request.debug_info()
app = DebugBeispiel