> > I think the run mode should only be taken from path_info when explicitly
> > requested by the rule (e.g. /foo/:app/:rm ).
>
> I guess my concern is how do you automate the selection of run mode in
> the dispatcher if it can be anywhere (or not at all). is :rm a special
> variable declaration or is each app module required to know something
> about the dispatch table in order to select the right run mode? This
> is an interesting question.
Yes, we've been assuming that :rm is a special placeholder name that
sets current_run_mode, not $self->param('rm').
> > For most apps I want the run mode set, but every so often I have an
> > exception, e.g:
> >
> > /get/path/to/file.html
> > /get/other/path/to/other/file.html
> >
> > For an app like this, I don't want the run mode being set to 'path' or
> > 'other'. And I also don't want to be forced to make my URLs
> > artificially longer by including a dummy run mode:
> >
> > /get/view/path/to/file.html
> > /get/view/other_path/to/other_file.html
>
> Sorry I'm not following what you mean here.
You were asking whether run_modes should automatically be parsed from
URLs if they are left out of the dispatch parameters and I was
illustrating why that would be a Bad Idea (tm).
Obviously the URL /get/some/file/somewhere.htm wants $rm to be left
unset and $path to be set to '/some/file/somewhere.html'. It doesn't
want $rm set to 'some' and @params set to ('file', 'somewhere.html').
There are other reasons why it's a bad idea to *always* parse the run
mode from the URL (Rob pointed some out), but this is the reason that
hits home for me, since I actually have apps that work like this.
Michael
---
Michael Graham <[EMAIL PROTECTED]>
---------------------------------------------------------------------
Web Archive: http://www.mail-archive.com/[email protected]/
http://marc.theaimsgroup.com/?l=cgiapp&r=1&w=2
To unsubscribe, e-mail: [EMAIL PROTECTED]
For additional commands, e-mail: [EMAIL PROTECTED]