Skip to content
Projects
Groups
Snippets
Help
Loading...
Sign in
Toggle navigation
B
beego
Project
Project
Details
Activity
Cycle Analytics
Repository
Repository
Files
Commits
Branches
Tags
Contributors
Graph
Compare
Charts
Issues
0
Issues
0
List
Board
Labels
Milestones
Merge Requests
0
Merge Requests
0
Wiki
Wiki
Snippets
Snippets
Members
Members
Collapse sidebar
Close sidebar
Activity
Graph
Charts
Create a new issue
Commits
Issue Boards
Open sidebar
go
beego
Commits
00b710e1
Commit
00b710e1
authored
Jun 11, 2014
by
astaxie
Browse files
Options
Browse Files
Download
Email Patches
Plain Diff
beego:namespace sub router add url to pattern
parent
e25fcffb
Hide whitespace changes
Inline
Side-by-side
Showing
1 changed file
with
18 additions
and
0 deletions
+18
-0
namespace.go
namespace.go
+18
-0
No files found.
namespace.go
View file @
00b710e1
...
...
@@ -198,10 +198,12 @@ func (n *Namespace) Namespace(ns ...*Namespace) *Namespace {
for
_
,
ni
:=
range
ns
{
for
k
,
v
:=
range
ni
.
handlers
.
routers
{
if
t
,
ok
:=
n
.
handlers
.
routers
[
k
];
ok
{
addPrefix
(
v
,
ni
.
prefix
)
n
.
handlers
.
routers
[
k
]
.
AddTree
(
ni
.
prefix
,
v
)
}
else
{
t
=
NewTree
()
t
.
AddTree
(
ni
.
prefix
,
v
)
addPrefix
(
t
,
ni
.
prefix
)
n
.
handlers
.
routers
[
k
]
=
t
}
}
...
...
@@ -225,10 +227,12 @@ func AddNamespace(nl ...*Namespace) {
for
_
,
n
:=
range
nl
{
for
k
,
v
:=
range
n
.
handlers
.
routers
{
if
t
,
ok
:=
BeeApp
.
Handlers
.
routers
[
k
];
ok
{
addPrefix
(
v
,
n
.
prefix
)
BeeApp
.
Handlers
.
routers
[
k
]
.
AddTree
(
n
.
prefix
,
v
)
}
else
{
t
=
NewTree
()
t
.
AddTree
(
n
.
prefix
,
v
)
addPrefix
(
t
,
n
.
prefix
)
BeeApp
.
Handlers
.
routers
[
k
]
=
t
}
}
...
...
@@ -245,6 +249,20 @@ func AddNamespace(nl ...*Namespace) {
}
}
func
addPrefix
(
t
*
Tree
,
prefix
string
)
{
for
_
,
v
:=
range
t
.
fixrouters
{
addPrefix
(
v
,
prefix
)
}
if
t
.
wildcard
!=
nil
{
addPrefix
(
t
.
wildcard
,
prefix
)
}
if
t
.
leaf
!=
nil
{
if
c
,
ok
:=
t
.
leaf
.
runObject
.
(
*
controllerInfo
);
ok
{
c
.
pattern
=
prefix
+
c
.
pattern
}
}
}
// Namespace Condition
func
NSCond
(
cond
namespaceCond
)
innnerNamespace
{
return
func
(
ns
*
Namespace
)
{
...
...
Write
Preview
Markdown
is supported
0%
Try again
or
attach a new file
Attach a file
Cancel
You are about to add
0
people
to the discussion. Proceed with caution.
Finish editing this message first!
Cancel
Please
register
or
sign in
to comment