Minor FB3Lite Feature

If you've used FB3Lite, you may or may not know that it implicitly supports a Fusebox-like circuit structure.  Both do() and include() allow you to invoke fuseactions/templates from other directories within your application, though without the circuit aliasing abstraction layer that Fusebox provides.  This is a great way to break down large applications into multiple sub sections, or relate multiple separate applications into a single URL space (especially combined with URL rewriting).

The new feature is the ability to dereference directories with webroot/mapping relative paths (e.g., /mapping/dir/file.cfm).  Until now, only relative paths (to the current circuit) were allowed, as they were always prefixed with the current circuit's path.  But now if you start a do/include path with a slash, it'll be assumed a webroot/mapping relative path and be used as-is.

As you'd expect, there is a corresponding 'allowMappedCircuits' settings variable that can be used to disable this behaviour if your application requires the old-style behaviour (of leading slashes being ignored).

The newest version is available here, or look to the project page for links to the demo app, a history of revisions, and any new info that might come up.

One response to “Minor FB3Lite Feature”

  1. FB3Lite appSearchPath Supports Mappings

    [...] on the change to allow mappings in do/include, you can now use mapping-relative paths in the appSearchPath initialization variable as well.  [...]