I wrote a code similar to yours and it works for me. Here the routes: package Test; use Dancer2; use Dancer2::Plugin::Dummy; get '/' => sub { if (not defined(session->read('user'))) { return "No user" } else { return "User is here" } }; 1; Here the dummy plugin: package Dancer2::Plugin::Dummy; use Dancer2::Plugin; on_plugin_import { my $dsl = shift; my $controller = sub { $dsl->session(user => "Yippikiayeeeh"); return "You have a user now!"}; $dsl->any(['get'] => '/populate/session', $controller); }; register_plugin for_versions => [ 2 ]; If I go to populate/session and the on the home I can see user populated. What kind of session manager are you using? Are you sure it's working well? Cymon http://perlishscrewdriver.blogspot.it/ Il giorno Fri, 4 Oct 2013 00:36:23 +0530 "Gideon D'souza" <gidisrael@gmail.com> ha scritto:
Tried it, It still goes into a redirect loop because the session is always undef the sub for "/".
:( I'd really appreciate anyone just peeing into this!
On Tue, Oct 1, 2013 at 4:48 AM, Slavik Goltser <slavikg@gmail.com> wrote:
Doesn't that get ignored in Dancer2?
On Mon, Sep 30, 2013 at 6:51 PM, Cymon <cymon.ML@gmail.com> wrote:
Hi, i tried your code.
Did you remember to add:
register_plugin for_versions => [ 2 ];
at the end of the plugin? It will not work without this.
Cymon http://perlishscrewdriver.blogspot.it/
Il giorno Sun, 29 Sep 2013 22:55:05 +0530 "Gideon D'souza" <gidisrael@gmail.com> ha scritto:
Thank you very much for your time.
I tried it. No luck still.
If I may bother you so:
on_plugin_import { my $dsl = shift; my $controller = sub { ...; ...; $dsl->session(user => $some_json);} $dsl->any(['get'] => '/your/path', $controller); }
in app that uses this plugin:
get '/' => sub {
if (not defined(session->read('user'))) { ###### #session->Read('user') is always undef!!! ###### return redirect auth_github_authenticate_url; } };
Any clues here?
On Sun, Sep 29, 2013 at 6:49 PM, Cymon <cymon.ML@gmail.com> wrote:
Is there a way to add routes inside a plugin, on init or something like that? Or perhaps it's something else I've missed?
Any reply or pointers appreciated.
Hi, I have no time to try your code now and help you with your issue, but I can answer this.
To add routes inside a plugin just define the on_plugin_import sub in your plugin package as this.
on_plugin_import { my $dsl = shift; my $controller = sub { ...do things ... } $dsl->any(['get'] => '/your/path', $controller); }
-- Cymon http://perlishscrewdriver.blogspot.it/ _______________________________________________ dancer-users mailing list dancer-users@dancer.pm http://lists.preshweb.co.uk/mailman/listinfo/dancer-users
-- Cymon Coniglio domina, http://www.therabbit.it _______________________________________________ dancer-users mailing list dancer-users@dancer.pm http://lists.preshweb.co.uk/mailman/listinfo/dancer-users
_______________________________________________ dancer-users mailing list dancer-users@dancer.pm http://lists.preshweb.co.uk/mailman/listinfo/dancer-users
-- Cymon Coniglio domina, http://www.therabbit.it