Hello all,
I''ve two limitations in rails routes for which I don''t find a
solution.
1. how to distinguish /hello/ from /hello ?
Rails routes seem not use nor validate the trailing slash. routes
''hello'' and ''hello/'' both validates urls
''/hello'' and ''/hello/''
2. how to have a dynamic ''internal'' part in the url ?
I would like to match everithing like %r{/\.ht} so that the following
routes are catch : /.htaccess /.htusers
/hello/foo/barunlimited/number/of/path/.htaccess
(I know that apache is already forbidding this ones, it is only an
example)
Rails routes let me write '':special_with_regexp/*path_info''
but not
''*path_info/:special_with_regexp''. Is there a way to do that ?
It seems I can''t even do a regexp requirement on the *path_info to
check
all this by hand (at least I didn''t manage to do it).
>From what I see rails routes as pretty limited. Is there a way to
resolve my two needs ? If not, is there at least a (simple) way to take
hand on routes to do ''by hands regexp'' on the full url ?
It seems that rails routes are more restricted and not very simpliers
than plain regexp for my personnal needs.
And ... maybe two ideas for feature request :
3. It would be cool if a could chain some routes. Say that "ok, url
begin with /hello so put it in pipe A to finish dispatching", "this
one
is not /hello but /foo, so finish dispatching with pipe B". Something
like sub-route.
something like :
map.connect_with_submap ''hello/*path_info'' { |sub|
sub.connect ''foo/:controller/:action'', ... # to check
url
/hello/foo/...
sub.connect ''bar/:controller/:action'', ... # to check
url
/hello/bar/...
}
4. I would be very convenient to be able to add a block to do
additionnal checks by hands if the regexp is ok. Maybe something like :
# validates only if :id is a multiple of 2
map.connect '':controller/:action/:id'',
:requirements => {:id => /\d+/}} ,
{ |request, params| 0 == id % 2 }
Thanks in advance for any reply or idea.
--
Eric D.
--
Posted via http://www.ruby-forum.com/.