Re: [PATCH] nevow.static.File directory listing
Can you explain *why* you have the following code (copied from your original post):
from twisted.application import service from twisted.application import internet
class ADir(rend.Page): def locateChild(self, request, segments): path = '/'.join(segments) return static.File(path), ()
application = service.Application('ADirlist') webservice = internet.TCPServer( 8080, appserver.NevowSite(ADir()) ) webservice.setServiceParent(application)
What is the use case? Why not let static.File handle everything?
Well... it is certainly possible that I am going about this all wrong. I was trying to figure out how to serve images from the nevow server to go along with my web pages. This was the first way I figured to do that. If there is a better way, I am certainly willing to use it. Is this code flawed in some way? When I try to run it without that patch, I get an error like this trying to load the root url: 2004/04/04 20:52 EDT [HTTPChannel,0,127.0.0.1] Traceback (most recent call last): File "/usr/local/lib/python2.3/site-packages/twisted/protocols/http.py", line 554, in requestReceived self.process() File "/usr/local/lib/python2.3/site-packages/nevow/appserver.py", line 130, in process return self.site.getResourceFor( File "/usr/local/lib/python2.3/site-packages/twisted/internet/defer.py", line 189, in addCallback callbackKeywords=kw) File "/usr/local/lib/python2.3/site-packages/twisted/internet/defer.py", line 180, in addCallbacks self._runCallbacks() --- <exception caught here> --- File "/usr/local/lib/python2.3/site-packages/twisted/internet/defer.py", line 313, in _runCallbacks self.result = callback(self.result, *args, **kw) File "/usr/local/lib/python2.3/site-packages/nevow/appserver.py", line 133, in <lambda> lambda resource: inevow.IResource(resource).renderHTTP(self) File "/usr/local/lib/python2.3/site-packages/nevow/static.py", line 290, in renderHTTP f = self.openForReading() File "/usr/local/lib/python2.3/site-packages/nevow/static.py", line 253, in openForReading return self.fp.open() File "/usr/local/lib/python2.3/site-packages/twisted/python/filepath.py", line 138, in open return open(self.path, mode+'b') exceptions.IOError: [Errno 21] Is a directory 2004/04/04 20:52 EDT [HTTPChannel,0,127.0.0.1] html is not a string: None _________________________________________________________________ Tired of spam? Get advanced junk mail protection with MSN 8. http://join.msn.com/?page=features/junkmail
participants (3)
-
Lee Harr
-
Matt Goodall
-
Samuel Reynolds