OK, I installed the current version of web2py on my laptop and copied over the 'init' application and a 'blog' application. I've launched the test server and opened the blog app in my browser.
The main problem I'm having now is URL rewriting. Here's routes.py in my blog app:
default_controller = 'default' # ordinarily set in app-specific routes.py
default_function = 'index' # ordinarily set in app-specific routes.py
#
routes_in = (
('/blog/category/$anything', '/blog/default/tag/$anything'),
('/blog/static/$anything', '/blog/static/$anything'),
('/blog', '/blog/default/index'),
('/blog/$anything', '/blog/default/post/$anything'),
)
routes_out = [(y,x) for (x,y) in routes_in]
And here's the index template of the blog:
{{ response.files.append(URL('static/css/blog.css')) }}
{{extend '../../init/views/layout.html'}}
<h1>Latest Blog Posts:</h1>
{{ for post in posts: }}
<div class="post">
<h2 class="title"><a href="{{ =URL('index',args=[post.slug]) }}">{{ =post.title }}</a></h2>
{{ if post.thumbnail: }}
<img class=blog_thumbnail src="{{ =URL(post.thumbnail) }}" alt="{{ =post.title }}">
{{ pass }}
<p class="description">
{{ =post.meta_description }}
<a href="{{ =URL('index',args=[post.slug]) }}">More >></a>
</p>
</div>
{{ pass }}
On the old version of my blog, I would get relative URLs '/blog/<post_slug>', but now I'm getting '/blog/default/<post_slug>'. SImilar behavior is occurring in the top-level navigation. Has routing behavior changed?