I could not replicate your case using your code.

On Wed, Jun 29, 2011 at 7:44 PM, sawyer x <xsawyerx@gmail.com> wrote:
It would appear as though reloading the config disables Dancer::Plugin::Ajax.

Let me look into that...

On Wed, Jun 29, 2011 at 6:17 PM, Stephen Fenwick-Paul <stephen@activeg.org> wrote:
Hi,


V. simple app:

package MyApp;

use Dancer ':syntax';
use Dancer::Plugin::Ajax;

ajax '/hellox/:name' => sub {
    template 'hello';
};

true;

Produces:


$ curl -H 'X-Requested-With: XMLHttpRequest' http://www.myapp.new/hellox/fred

<p>This is hello</p>

Which is to be expected.

But:

package MyApp;

use Dancer ':syntax';
use Dancer::Plugin::Ajax;

ajax '/hellox/:name' => sub {
    Dancer::Config::setting('appdir',$ENV{ROOT});
    Dancer::Config::load();

    template 'hello';
};

true;

$ curl -H 'X-Requested-With: XMLHttpRequest' http://www.myapp.new/hellox/fred

Produces:


<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN"
<head></head>
<body>
    
<p>This is hello</p>

</body>
</html>

So, running Dancer::Config::load() stops Plugin::Ajax working.

This may seems a strange thing to do, but for me the load() was deep in a module that some times runs outside of Dancer but picks up stuff from the Dancer config. 

Handling the ajax call manually (as per the the Cookbox) there are no problems with using load().

Stephen





 


_______________________________________________
Dancer-users mailing list
Dancer-users@perldancer.org
http://www.backup-manager.org/cgi-bin/listinfo/dancer-users