Hello,

I'm new to web2py and am having a difficult time understanding how to use 
either the parameter or pattern based systems as well how web2py default 
routing works.

*I'll start off with the first point of confusion for me;*

The web2py book and documentation has led me to believe that the following 
would work;

http://120.0.0.1/myapp/default/somefunction can be written as 
http://120.0.0.1/myapp/somefunction but I get invalid request error

If I copy router.example.py to routes.py in the base directory, the above 
case then works as I expected, but I thought that even with a lack of a 
routes.py file, web2py would still automatically default to the same 
behavior. This isn't so at all?

If I then overwrite routes.py using routes.example.py, the above case no 
longer works. Looking at both routes.example.py and router.example.py, it 
looks like both of them configure web2py's routing behavior in the same 
way, but the actual behavior is not the same.

So I'm pretty confused about this. Note, after each changes to routes.py I 
do reload the routes in web2py's admin console.

*The second point of confusion for me is;*
*
*
In the application I'm writing, which uses AJAX heavily and uses PUT and 
DELETE in addition to GET and POST.

I have in one of the controller, users, the following;

def index():
    def GET():
       blah
    def POST(*vars, **fields):
      blah
    def PUT(*vars, **fields):
      blah
    def DELETE(*vars, **fields):
      blah

I want to map a PUT request to users/5 to users/index/5

Right now the current default routing configuration returns users/5 as 
invalid request which is expected. Unfortunately I still don't understand 
web2py well enough to know how to set up one of the routing systems to map 
users/<id> to users/index/<id>

I think I need to use the pattern matching system but I'm not able to get 
it working properly.

Would appreciate your tips.

Thanks
Alex

Reply via email to