Okay, then I will go back to using post '/user' => sub { in my app.
Unfortunately it still does not work. Any further help would be
greeeeaaaaaaatly appreciated as I don't want to spend my weekend stuck like
this.Thanks 2015-08-07 13:22 GMT-05:00 James Baer <[email protected]>: > Do not replace POST with the GET. To be clear, you need both route > definitions. > unless you do something like: > any ['get', 'post'] => '/user' => sub { > }; > but you will probably have to add some logic to check the request method > so I recommend just having: > get '/user' => sub { > }; > post '/user' => sub { > }; > > > > On Fri, Aug 7, 2015 at 2:17 PM, Richard Reina <[email protected]> > wrote: > >> replacing post with get '/user' in my app does allow me to pull up the >> page but when I enter information into it and press Go I get: >> >> File not found >> >> Iceweasel can't find the file at http://0.0.0.0:3000/user. >> >> Check the file name for capitalization or other typing errors. >> Check to see if the file was moved, renamed or deleted. >> >> And if I enter incorrect or incomplete information into it I get a >> similar error which of course prevents me from showing the user necessary >> error handling like return "Last Name was not entered" etc. >> >> 2015-08-07 13:03 GMT-05:00 James Baer <[email protected]>: >> >>> You still need to have a GET route to display the form: >>> >>> get '/user' => sub { >>> template 'user'; >>> } >>> >>> Then when you submit the form it will go to your POST route handler. >>> >>> >>> On Fri, Aug 7, 2015 at 1:59 PM, Richard Reina <[email protected]> >>> wrote: >>> >>>> I can't get the page to appear in the browser so I can't press the Go >>>> button. >>>> >>>> I get: >>>> >>>> Error 404 >>>> Page Not Found >>>> >>>> Sorry, this is the void. >>>> Powered by Dancer <http://perldancer.org/>. >>>> >>>> >>>> This is user.tt >>>> >>>> <!DOCTYPE html> >>>> <html> >>>> <body> >>>> >>>> <h1>Get in the game.</h1> >>>> >>>> <form action="user" method="post"> >>>> First name:<br> >>>> <input type="text" name="firstname"> >>>> <br> >>>> Last name:<br> >>>> <input type="text" name="lastname"> >>>> <br> >>>> Email Address:<br> >>>> <input type="text" name="email"> >>>> <br> >>>> User Password:<br> >>>> <input type="password" name="psw"> >>>> <br> >>>> User Confirm Password:<br> >>>> <input type="password" name="psw2"> >>>> <br> >>>> Terms & Conditions >>>> <input type="checkbox" name="terms"> I agree with terms and >>>> conditions.<br> >>>> <br> >>>> <input type="submit" value="Go" /> >>>> </form> >>>> >>>> <p>Note that the form itself is not visible.</p> >>>> >>>> <p>Also note that the default width of a text field is 20 >>>> characters.</p> >>>> >>>> </body> >>>> </html> >>>> >>>> >>>> >>>> 2015-08-07 12:38 GMT-05:00 Kadir Beyazlı <[email protected]>: >>>> >>>>> Richard, >>>>> >>>>> Would you please copy template 'user' here? >>>>> If everything is OK, when you click on "Go" button, POST requests will >>>>> be performed >>>>> >>>>> >>>>> >>>>> On Fri, Aug 7, 2015 at 8:30 PM, Richard Reina <[email protected]> >>>>> wrote: >>>>> >>>>>> Yes and just did and tried again to make sure. >>>>>> >>>>>> 2015-08-07 12:16 GMT-05:00 Kadir Beyazlı <[email protected]>: >>>>>> >>>>>>> Hi Richard, >>>>>>> >>>>>>> Did you restart server after you changed GET with POST at form >>>>>>> definition? >>>>>>> >>>>>>> >>>>>>> On Fri, Aug 7, 2015 at 7:58 PM, Richard Reina <[email protected]> >>>>>>> wrote: >>>>>>> >>>>>>>> Sorry this is my dancer console output: >>>>>>>> >>>>>>>> >> Dancer 1.3140 server 24745 listening on http://0.0.0.0:3000 >>>>>>>> >> Dancer::Plugin::FormValidator (1.131620) >>>>>>>> == Entering the development dance floor ... >>>>>>>> [24745] core @0.000165> request: GET /user from 127.0.0.1 in >>>>>>>> /usr/local/share/perl/5.14.2/Dancer/Handler.pm l. 58 >>>>>>>> [24745] core @0.000569> [hit #1]Trying to match 'GET /user' >>>>>>>> against /^\/$/ (generated from '/') in >>>>>>>> /usr/local/share/perl/5.14.2/Dancer/Route.pm l. 85 >>>>>>>> [24745] core @0.000757> [hit #1]Trying to match 'GET /user' >>>>>>>> against /^\/player$/ (generated from '/player') in >>>>>>>> /usr/local/share/perl/5.14.2/Dancer/Route.pm l. 85 >>>>>>>> [24745] core @0.000932> [hit #1]Trying to match 'GET /user' >>>>>>>> against /^\/sponsor$/ (generated from '/sponsor') in >>>>>>>> /usr/local/share/perl/5.14.2/Dancer/Route.pm l. 85 >>>>>>>> [24745] core @0.001113> [hit #1]Trying to match 'GET /user' >>>>>>>> against /^\/$/ (generated from '/') in >>>>>>>> /usr/local/share/perl/5.14.2/Dancer/Route.pm l. 85 >>>>>>>> [24745] core @0.001282> [hit #1]Trying to match 'GET /user' >>>>>>>> against /^\/player$/ (generated from '/player') in >>>>>>>> /usr/local/share/perl/5.14.2/Dancer/Route.pm l. 85 >>>>>>>> [24745] core @0.001452> [hit #1]Trying to match 'GET /user' >>>>>>>> against /^\/sponsor$/ (generated from '/sponsor') in >>>>>>>> /usr/local/share/perl/5.14.2/Dancer/Route.pm l. 85 >>>>>>>> [24745] core @0.001956> [hit #1]response: 304 in >>>>>>>> /usr/local/share/perl/5.14.2/Dancer/Handler.pm l. 181 >>>>>>>> [24745] core @0.000174> request: GET /css/error.css from 127.0.0.1 >>>>>>>> in /usr/local/share/perl/5.14.2/Dancer/Handler.pm l. 58 >>>>>>>> [24745] core @0.000710> [hit #2]response: 304 in >>>>>>>> /usr/local/share/perl/5.14.2/Dancer/Handler.pm l. 181 >>>>>>>> >>>>>>>> >>>>>>>> >>>>>>>> 2015-08-07 11:58 GMT-05:00 Richard Reina <[email protected]>: >>>>>>>> >>>>>>>>> This is my dancer console output. >>>>>>>>> >>>>>>>>> >>>>>>>>> >>>>>>>>> 2015-08-07 11:11 GMT-05:00 Richard Reina <[email protected]>: >>>>>>>>> >>>>>>>>>> replacing the first few lines with: >>>>>>>>>> >>>>>>>>>> <html> >>>>>>>>>> <body> >>>>>>>>>> >>>>>>>>>> <h1>Get in the game.</h1> >>>>>>>>>> >>>>>>>>>> <form action="user" method="POST"> >>>>>>>>>> First name:<br> >>>>>>>>>> >>>>>>>>>> I still get Error 404 >>>>>>>>>> >>>>>>>>>> Interestingly enough when I modify this >>>>>>>>>> http://www.w3schools.com/html/tryit.asp?filename=tryhtml_form_submit >>>>>>>>>> to method="POST" it does not work either. >>>>>>>>>> >>>>>>>>>> 2015-08-07 10:54 GMT-05:00 John Stoffel <[email protected]>: >>>>>>>>>> >>>>>>>>>>> >>>>>>>>>>> And I know there's a helper you can use to fill in the action so >>>>>>>>>>> that >>>>>>>>>>> you don't have to update the URLs when you deploy it >>>>>>>>>>> elsewhere.... but >>>>>>>>>>> I'm at work and not near my notes... >>>>>>>>>>> >>>>>>>>>>> Ah... here it is. Just do: >>>>>>>>>>> >>>>>>>>>>> <form action="user"> >>>>>>>>>>> >>>>>>>>>>> And I think you also want to remove the <!DOCTYPE html> as well, >>>>>>>>>>> since >>>>>>>>>>> this template will get embedded into alayout which will take >>>>>>>>>>> care of >>>>>>>>>>> all that stuff. >>>>>>>>>>> >>>>>>>>>>> John >>>>>>>>>>> >>>>>>>>>>> >>>>>>>>>>> Andrew> I think what you're after is something like this to tell >>>>>>>>>>> the browser you want to POST: >>>>>>>>>>> Andrew> <form action="http://localhost:3000/user" method="POST"> >>>>>>>>>>> >>>>>>>>>>> Andrew> Does that do the trick? >>>>>>>>>>> >>>>>>>>>>> Andrew> A >>>>>>>>>>> >>>>>>>>>>> Andrew> On Fri, Aug 7, 2015 at 3:47 PM, Richard Reina < >>>>>>>>>>> [email protected]> wrote: >>>>>>>>>>> >>>>>>>>>>> Andrew> Wait, Does this provide a clue to the error of my >>>>>>>>>>> ways? This is the template (user.tt) that I >>>>>>>>>>> Andrew> am using for the form. >>>>>>>>>>> >>>>>>>>>>> Andrew> <!DOCTYPE html> >>>>>>>>>>> Andrew> <html> >>>>>>>>>>> Andrew> <body> >>>>>>>>>>> >>>>>>>>>>> Andrew> <h1>Get in the game.</h1> >>>>>>>>>>> >>>>>>>>>>> Andrew> <form> >>>>>>>>>>> Andrew> First name:<br> >>>>>>>>>>> Andrew> <input type="text" name="firstname"> >>>>>>>>>>> Andrew> <br> >>>>>>>>>>> Andrew> Last name:<br> >>>>>>>>>>> Andrew> <input type="text" name="lastname"> >>>>>>>>>>> Andrew> <br> >>>>>>>>>>> Andrew> Email Address:<br> >>>>>>>>>>> Andrew> <input type="text" name="email"> >>>>>>>>>>> Andrew> <br> >>>>>>>>>>> Andrew> User Password:<br> >>>>>>>>>>> Andrew> <input type="password" name="psw"> >>>>>>>>>>> Andrew> <br> >>>>>>>>>>> Andrew> User Confirm Password:<br> >>>>>>>>>>> Andrew> <input type="password" name="psw2"> >>>>>>>>>>> Andrew> <br> >>>>>>>>>>> Andrew> Terms & Conditions >>>>>>>>>>> Andrew> <input type="checkbox" name="terms"> I agree with >>>>>>>>>>> terms and conditions.<br> >>>>>>>>>>> Andrew> <br> >>>>>>>>>>> Andrew> <input type="submit" value="Go" /> >>>>>>>>>>> Andrew> </form> >>>>>>>>>>> >>>>>>>>>>> Andrew> <p>Note that the form itself is not visible.</p> >>>>>>>>>>> >>>>>>>>>>> Andrew> <p>Also note that the default width of a text field >>>>>>>>>>> is 20 characters.</p> >>>>>>>>>>> >>>>>>>>>>> Andrew> </body> >>>>>>>>>>> Andrew> </html> >>>>>>>>>>> >>>>>>>>>>> Andrew> 2015-08-07 9:36 GMT-05:00 John Stoffel < >>>>>>>>>>> [email protected]>: >>>>>>>>>>> >>>>>>>>>>> Andrew> You need to build a web page with a FORM first, >>>>>>>>>>> then submit the data >>>>>>>>>>> Andrew> that way to the /user URL, so it can get handled. >>>>>>>>>>> >>>>>>>>>>> Andrew> Try using git to clone this repository and use >>>>>>>>>>> that as a base for your >>>>>>>>>>> Andrew> playing around: >>>>>>>>>>> >>>>>>>>>>> Andrew> >>>>>>>>>>> https://github.com/agordon/dancer_bootstrap_fontawesome_template.git >>>>>>>>>>> >>>>>>>>>>> Andrew> I don't have any working examples handy right >>>>>>>>>>> this second... >>>>>>>>>>> >>>>>>>>>>> Richard> I am hoping someone can help me understand how to get >>>>>>>>>>> this to >>>>>>>>>>> Richard> work as a POST instead of GET. When I do sub below as >>>>>>>>>>> 'get' >>>>>>>>>>> Richard> it works but when I replace 'get' with 'post' I get: >>>>>>>>>>> >>>>>>>>>>> Richard> --2015-08-06 13:52:05-- http://0.0.0.0:3000/user >>>>>>>>>>> Richard> Connecting to 0.0.0.0:3000... connected. >>>>>>>>>>> Richard> HTTP request sent, awaiting response... 404 Not Found >>>>>>>>>>> Richard> 2015-08-06 13:52:05 ERROR 404: Not Found. >>>>>>>>>>> >>>>>>>>>>> Richard> package MyApp; >>>>>>>>>>> Richard> use Dancer ':syntax'; >>>>>>>>>>> Richard> use Dancer::Plugin::FormValidator; >>>>>>>>>>> >>>>>>>>>>> Richard> our $VERSION = '0.1'; >>>>>>>>>>> >>>>>>>>>>> Richard> post '/user' => sub { >>>>>>>>>>> >>>>>>>>>>> Richard> my $input_hash = { >>>>>>>>>>> >>>>>>>>>>> Richard> FName => param('firstname'), >>>>>>>>>>> Richard> LName => param('lastname'), >>>>>>>>>>> Richard> Email => param('email'), >>>>>>>>>>> Richard> Terms => param('terms'), >>>>>>>>>>> >>>>>>>>>>> Richard> }; >>>>>>>>>>> >>>>>>>>>>> Richard> my $number_of_defined_values = scalar grep { >>>>>>>>>>> defined } values %{$input_hash}; >>>>>>>>>>> Richard> $number_of_defined_values = >>>>>>>>>>> $number_of_defined_values + 0; >>>>>>>>>>> >>>>>>>>>>> Richard> if ($number_of_defined_values > 1) { >>>>>>>>>>> >>>>>>>>>>> Richard> my $error = form_validator_error( >>>>>>>>>>> 'profile_user', $input_hash ); >>>>>>>>>>> >>>>>>>>>>> Richard> if ( ! $error ) { >>>>>>>>>>> Richard> #the user provided complete and validates >>>>>>>>>>> data it's cool to proceed >>>>>>>>>>> >>>>>>>>>>> Richard> } else { >>>>>>>>>>> >>>>>>>>>>> Richard> my %hash = %$error; >>>>>>>>>>> Richard> foreach my $k (keys %hash) { >>>>>>>>>>> Richard> return "$k: $hash{$k}\n"; >>>>>>>>>>> >>>>>>>>>>> Richard> } >>>>>>>>>>> >>>>>>>>>>> Richard> } >>>>>>>>>>> Richard> } >>>>>>>>>>> >>>>>>>>>>> Richard> template 'user'; >>>>>>>>>>> >>>>>>>>>>> Richard> >>>>>>>>>>> ########################################################## >>>>>>>>>>> Richard> }; ### end of sub user >>>>>>>>>>> ################################### >>>>>>>>>>> >>>>>>>>>>> Richard> true; >>>>>>>>>>> >>>>>>>>>>> Richard> Thanks in advance for any help. >>>>>>>>>>> >>>>>>>>>>> Richard> _______________________________________________ >>>>>>>>>>> Richard> dancer-users mailing list >>>>>>>>>>> Richard> [email protected] >>>>>>>>>>> Richard> >>>>>>>>>>> http://lists.preshweb.co.uk/mailman/listinfo/dancer-users >>>>>>>>>>> Andrew> _______________________________________________ >>>>>>>>>>> Andrew> dancer-users mailing list >>>>>>>>>>> Andrew> [email protected] >>>>>>>>>>> Andrew> >>>>>>>>>>> http://lists.preshweb.co.uk/mailman/listinfo/dancer-users >>>>>>>>>>> >>>>>>>>>>> Andrew> _______________________________________________ >>>>>>>>>>> Andrew> dancer-users mailing list >>>>>>>>>>> Andrew> [email protected] >>>>>>>>>>> Andrew> >>>>>>>>>>> http://lists.preshweb.co.uk/mailman/listinfo/dancer-users >>>>>>>>>>> >>>>>>>>>>> Andrew> -- >>>>>>>>>>> Andrew> Andrew Solomon >>>>>>>>>>> >>>>>>>>>>> Andrew> Mentor@Geekuni http://geekuni.com/ >>>>>>>>>>> Andrew> http://www.linkedin.com/in/asolomon >>>>>>>>>>> >>>>>>>>>>> Andrew> _______________________________________________ >>>>>>>>>>> Andrew> dancer-users mailing list >>>>>>>>>>> Andrew> [email protected] >>>>>>>>>>> Andrew> >>>>>>>>>>> http://lists.preshweb.co.uk/mailman/listinfo/dancer-users >>>>>>>>>>> _______________________________________________ >>>>>>>>>>> dancer-users mailing list >>>>>>>>>>> [email protected] >>>>>>>>>>> http://lists.preshweb.co.uk/mailman/listinfo/dancer-users >>>>>>>>>>> >>>>>>>>>> >>>>>>>>>> >>>>>>>>> >>>>>>>> >>>>>>>> _______________________________________________ >>>>>>>> dancer-users mailing list >>>>>>>> [email protected] >>>>>>>> http://lists.preshweb.co.uk/mailman/listinfo/dancer-users >>>>>>>> >>>>>>>> >>>>>>> >>>>>>> >>>>>>> -- >>>>>>> >>>>>>> *Kadir BeyazlıComputer Engineer* >>>>>>> *GSM : +90 535 821 50 00 <%2B90%20535%20821%2050%2000>* >>>>>>> >>>>>>> _______________________________________________ >>>>>>> dancer-users mailing list >>>>>>> [email protected] >>>>>>> http://lists.preshweb.co.uk/mailman/listinfo/dancer-users >>>>>>> >>>>>>> >>>>>> >>>>>> _______________________________________________ >>>>>> dancer-users mailing list >>>>>> [email protected] >>>>>> http://lists.preshweb.co.uk/mailman/listinfo/dancer-users >>>>>> >>>>>> >>>>> >>>>> >>>>> -- >>>>> >>>>> *Kadir BeyazlıComputer Engineer* >>>>> *GSM : +90 535 821 50 00 <%2B90%20535%20821%2050%2000>* >>>>> >>>>> _______________________________________________ >>>>> dancer-users mailing list >>>>> [email protected] >>>>> http://lists.preshweb.co.uk/mailman/listinfo/dancer-users >>>>> >>>>> >>>> >>>> _______________________________________________ >>>> dancer-users mailing list >>>> [email protected] >>>> http://lists.preshweb.co.uk/mailman/listinfo/dancer-users >>>> >>>> >>> >>> _______________________________________________ >>> dancer-users mailing list >>> [email protected] >>> http://lists.preshweb.co.uk/mailman/listinfo/dancer-users >>> >>> >> >> _______________________________________________ >> dancer-users mailing list >> [email protected] >> http://lists.preshweb.co.uk/mailman/listinfo/dancer-users >> >> > > _______________________________________________ > dancer-users mailing list > [email protected] > http://lists.preshweb.co.uk/mailman/listinfo/dancer-users > >
_______________________________________________ dancer-users mailing list [email protected] http://lists.preshweb.co.uk/mailman/listinfo/dancer-users
