Hi Brad,
try:
render = web.template.render(os.path.join(os.path.dirname(__file__),
'templates/'))
W dniu wtorek, 27 listopada 2012 19:05:46 UTC+1 użytkownik Brad Lucas
napisał:
>
> OK. Looks like the template.py file has an internal check and if it can
> find an installed Google App Engine SDK then it uses GAE_Render instead of
> render.
>
> By moving the SDK out of the way I was able to run the simple example.
>
>
>
> - Brad
>
>
>
>
> On Tuesday, November 27, 2012 12:41:19 PM UTC-5, Brad Lucas wrote:
>>
>> The __ini__.py file made no sense so I removed it.
>>
>> Back to Import Error: No module named templates
>>
>> Now looking into the line 1028 of the templates.py file I notice.
>>
>> The line ... in my file
>> render = web.template.render('templates/')
>>
>> ends up with an error inside a class called GAE_Render
>>
>> class GAE_Render(Render):
>> # Render gets over-written. make a copy here.
>> super = Render
>> def __init__(self, loc, *a, **kw):
>> GAE_Render.super.__init__(self, loc, *a, **kw)
>>
>> import types
>> if isinstance(loc, types.ModuleType):
>> self.mod = loc
>> else:
>> name = loc.rstrip('/').replace('/', '.')
>> self.mod = __import__(name, None, None, ['x']) # line 1028
>>
>>
>> Why do you think creating an render object is ending up inside of a
>> Google App Engine class.
>>
>> I'm just running the simple example on the command line.
>>
>>
>> - Brad
>>
>>
>>
>>
>>
>>
>> On Monday, November 26, 2012 12:00:51 AM UTC-5, Brad Lucas wrote:
>>>
>>> Just starting with the simplest of examples to use templates I get the
>>> following error. Has anyone else seen this and can explain what is going on?
>>>
>>> python app.py
>>> Traceback (most recent call last):
>>> File "app.py", line 7, in <module>
>>> render = web.template.render('templates/')
>>> File "/Library/Python/2.6/site-packages/web/template.py", line 1028,
>>> in __init__
>>> self.mod = __import__(name, None, None, ['x'])
>>> ImportError: No module named templates
>>>
>>>
>>> My app.py looks like this:
>>>
>>> import web
>>>
>>> urls = (
>>> '/', 'index'
>>> )
>>> app = web.application(urls, globals())
>>> render = web.template.render('templates/')
>>>
>>> class index:
>>> def GET(self):
>>> name = 'Bob'
>>> return render.index(name)
>>>
>>> if __name__ == "__main__":
>>> app.run()
>>>
>>>
>>>
>>> I have a sub-directory called templates with a file index.html in it.
>>>
>>> The index.html file looks like:
>>>
>>> $def with (name)
>>>
>>> $if name:
>>> I just wanted to say <em>hello</em> to $name.
>>> $else:
>>> <em>Hello</em>, world!
>>>
>>>
>>>
>>>
>>> Thanks,
>>>
>>> Brad
>>>
>>>
>>>
--
You received this message because you are subscribed to the Google Groups
"web.py" group.
To view this discussion on the web visit
https://groups.google.com/d/msg/webpy/-/eG4AqQMnGJwJ.
To post to this group, send email to [email protected].
To unsubscribe from this group, send email to
[email protected].
For more options, visit this group at
http://groups.google.com/group/webpy?hl=en.