diff pylons_app/config/routing.py @ 401:5cd6616b8673

routes python 2.5 compatible added my account settings, some changes to routes mappers for settings to more custom ones
author Marcin Kuzminski <marcin@python-works.com>
date Wed, 28 Jul 2010 01:44:39 +0200
parents 98abf8953b87
children ca54622e39a1
line wrap: on
line diff
--- a/pylons_app/config/routing.py	Tue Jul 27 15:57:21 2010 +0200
+++ b/pylons_app/config/routing.py	Wed Jul 28 01:44:39 2010 +0200
@@ -4,6 +4,7 @@
 may take precedent over the more generic routes. For more information
 refer to the routes manual at http://routes.groovie.org/docs/
 """
+from __future__ import with_statement
 from routes import Mapper
 from pylons_app.lib.utils import check_repo_fast as cr
 
@@ -31,7 +32,7 @@
         repo_name = match_dict.get('repo_name')
         return not cr(repo_name, config['base_path'])
  
-    #REST routes
+    #REST REPO MAP
     with map.submapper(path_prefix='/_admin', controller='admin/repos') as m:
         m.connect("repos", "/repos",
              action="create", conditions=dict(method=["POST"]))
@@ -69,7 +70,36 @@
         
     map.resource('user', 'users', controller='admin/users', path_prefix='/_admin')
     map.resource('permission', 'permissions', controller='admin/permissions', path_prefix='/_admin')
-    map.resource('setting', 'settings', controller='admin/settings', path_prefix='/_admin', name_prefix='admin_')
+    
+    #map.resource('setting', 'settings', controller='admin/settings', path_prefix='/_admin', name_prefix='admin_')
+    #REST SETTINGS MAP
+    with map.submapper(path_prefix='/_admin', controller='admin/settings') as m:
+        m.connect("admin_settings", "/settings",
+             action="create", conditions=dict(method=["POST"]))
+        m.connect("admin_settings", "/settings",
+             action="index", conditions=dict(method=["GET"]))
+        m.connect("admin_formatted_settings", "/settings.{format}",
+             action="index", conditions=dict(method=["GET"]))
+        m.connect("admin_new_setting", "/settings/new",
+             action="new", conditions=dict(method=["GET"]))
+        m.connect("admin_formatted_new_setting", "/settings/new.{format}",
+             action="new", conditions=dict(method=["GET"]))
+        m.connect("/settings/{setting_id}",
+             action="update", conditions=dict(method=["PUT"]))
+        m.connect("/settings/{setting_id}",
+             action="delete", conditions=dict(method=["DELETE"]))
+        m.connect("admin_edit_setting", "/settings/{setting_id}/edit",
+             action="edit", conditions=dict(method=["GET"]))
+        m.connect("admin_formatted_edit_setting", "/settings/{setting_id}.{format}/edit",
+             action="edit", conditions=dict(method=["GET"]))
+        m.connect("admin_setting", "/settings/{setting_id}",
+             action="show", conditions=dict(method=["GET"]))
+        m.connect("admin_formatted_setting", "/settings/{setting_id}.{format}",
+             action="show", conditions=dict(method=["GET"]))
+        m.connect("admin_settings_my_account", "/my_account",
+             action="my_account", conditions=dict(method=["GET"]))
+        m.connect("admin_settings_my_account_update", "/my_account_update",
+             action="my_account_update", conditions=dict(method=["PUT"]))
     
     #ADMIN
     with map.submapper(path_prefix='/_admin', controller='admin/admin') as m: