From 3f4996918079443d774788f32fb692d1d463b1c2 Mon Sep 17 00:00:00 2001
From: wei <>
Date: Fri, 22 Sep 2006 23:39:13 +0000
Subject: Add Url Mapping docs.
---
.gitattributes | 1 +
HISTORY | 1 +
buildscripts/texbuilder/pages.php | 4 +-
demos/blog/protected/application.xml | 5 ++
demos/quickstart/protected/controls/TopicList.tpl | 1 +
.../protected/pages/Configurations/UrlMapping.page | 75 ++++++++++++++++++++++
6 files changed, 86 insertions(+), 1 deletion(-)
create mode 100644 demos/quickstart/protected/pages/Configurations/UrlMapping.page
diff --git a/.gitattributes b/.gitattributes
index 6151c07d..5f00c740 100644
--- a/.gitattributes
+++ b/.gitattributes
@@ -806,6 +806,7 @@ demos/quickstart/protected/pages/Configurations/PageConfig.page -text
demos/quickstart/protected/pages/Configurations/Templates1.page -text
demos/quickstart/protected/pages/Configurations/Templates2.page -text
demos/quickstart/protected/pages/Configurations/Templates3.page -text
+demos/quickstart/protected/pages/Configurations/UrlMapping.page -text
demos/quickstart/protected/pages/Construction.page -text
demos/quickstart/protected/pages/Controls/Button.page -text
demos/quickstart/protected/pages/Controls/CheckBox.page -text
diff --git a/HISTORY b/HISTORY
index 4b7dc4d1..60b71526 100644
--- a/HISTORY
+++ b/HISTORY
@@ -7,6 +7,7 @@ ENH: Added an interactive PHP shell, usage: "prado-cli.php shell" (Wei)
ENH: Ticket#379 - TAuthorizationRule performance enhancement (Qiang)
ENH: Easier to customize the TDatePicker using CssClass (Wei)
NEW: TLiteralColumn (Qiang)
+NSW: TUrlMapping (Wei)
Version 3.0.4 September 4, 2006
===============================
diff --git a/buildscripts/texbuilder/pages.php b/buildscripts/texbuilder/pages.php
index 4d285162..44728924 100644
--- a/buildscripts/texbuilder/pages.php
+++ b/buildscripts/texbuilder/pages.php
@@ -29,7 +29,9 @@ $pages['Configurations'] = array(
'Configurations/Templates2.page',
'Configurations/Templates3.page',
'Configurations/AppConfig.page',
- 'Configurations/PageConfig.page');
+ 'Configurations/PageConfig.page',
+ 'Configurations/UrlMapping.page'
+ );
$pages['Control Reference : Standard Controls'] = array(
'Controls/Button.page',
diff --git a/demos/blog/protected/application.xml b/demos/blog/protected/application.xml
index 4a18c74b..f15c4fe4 100644
--- a/demos/blog/protected/application.xml
+++ b/demos/blog/protected/application.xml
@@ -15,6 +15,11 @@
Using the TUrlMapping module different URLs can be
+mapped into any existing Prado pages or services. This allows
+the application to use nice looking and friendly URLs.
+
+The TUrlMapping module allows aributary URL path to be mapped to a
+particular service and page class. This module must be configured
+before a service is initialized, thus this module should be configured
+globally in the application configuration
+file and before any services.
+ The mapping format is as follows.
+ The PageClass set the name of class that the matched URL will
+be requested.URL Mapping (Friendly URLs)
+
+
+In the above example, the pattern contains 3 parameters named "year", +"month" and "day". The pattern for these parameters are, +respectively, "\d{4}" (4 digits), "\d{2}" (2 digits) +and "\d+" (1 or more digits). +
+ +For example, an URL "http://example.com/index.php/articles/2006/07/21" will be matched +and valid. However, "http://example.com/index.php/articles/2006/07/hello" is not + valid since the "day" parameter pattern is not satisfied. + In the default TUrlMappingPattern class, the pattern is matched against the +path property of the URL only. For example, only the +"/index.php/articles/2006/07/21" portion of the URL is considered and the rest +is ignored. +
+ + +The parameter values are available through the standard Request +object. For example, $this->Request['year']. +
+ +The URL mapping are evaluated in order they are place and only the first mapping that matches + the URL will be used. Cascaded mapping can be achieved by placing the URL mappings + in particular order. For example, placing the most specific mappings first. +
+ + \ No newline at end of file -- cgit v1.2.3