{"id":26804832,"url":"https://github.com/throughnothing/dancer-plugin-datafu","last_synced_at":"2025-09-03T12:43:16.736Z","repository":{"id":66719012,"uuid":"2645411","full_name":"throughnothing/Dancer-Plugin-DataFu","owner":"throughnothing","description":"Dancer HTML Form and Grid/Table engine with Input Validation","archived":false,"fork":false,"pushed_at":"2010-11-03T18:36:20.000Z","size":95,"stargazers_count":0,"open_issues_count":0,"forks_count":0,"subscribers_count":1,"default_branch":"master","last_synced_at":"2025-03-29T22:28:51.055Z","etag":null,"topics":[],"latest_commit_sha":null,"homepage":"","language":"Perl","has_issues":false,"has_wiki":null,"has_pages":null,"mirror_url":null,"source_name":null,"license":null,"status":null,"scm":"git","pull_requests_enabled":true,"icon_url":"https://github.com/throughnothing.png","metadata":{"files":{"readme":"README","changelog":null,"contributing":null,"funding":null,"license":null,"code_of_conduct":null,"threat_model":null,"audit":null,"citation":null,"codeowners":null,"security":null,"support":null}},"created_at":"2011-10-25T18:22:19.000Z","updated_at":"2014-09-08T23:37:44.000Z","dependencies_parsed_at":"2023-02-20T09:50:16.184Z","dependency_job_id":null,"html_url":"https://github.com/throughnothing/Dancer-Plugin-DataFu","commit_stats":null,"previous_names":[],"tags_count":0,"template":false,"template_full_name":null,"purl":"pkg:github/throughnothing/Dancer-Plugin-DataFu","repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/throughnothing%2FDancer-Plugin-DataFu","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/throughnothing%2FDancer-Plugin-DataFu/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/throughnothing%2FDancer-Plugin-DataFu/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/throughnothing%2FDancer-Plugin-DataFu/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/throughnothing","download_url":"https://codeload.github.com/throughnothing/Dancer-Plugin-DataFu/tar.gz/refs/heads/master","sbom_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/throughnothing%2FDancer-Plugin-DataFu/sbom","scorecard":null,"host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":273445648,"owners_count":25107150,"icon_url":"https://github.com/github.png","version":null,"created_at":"2022-05-30T11:31:42.601Z","updated_at":"2022-07-04T15:15:14.044Z","status":"online","status_checked_at":"2025-09-03T02:00:09.631Z","response_time":76,"last_error":null,"robots_txt_status":"success","robots_txt_updated_at":"2025-07-24T06:49:26.215Z","robots_txt_url":"https://github.com/robots.txt","online":true,"can_crawl_api":true,"host_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub","repositories_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories","repository_names_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repository_names","owners_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners"}},"keywords":[],"created_at":"2025-03-29T22:27:15.624Z","updated_at":"2025-09-03T12:43:16.686Z","avatar_url":"https://github.com/throughnothing.png","language":"Perl","funding_links":[],"categories":[],"sub_categories":[],"readme":"Dancer-Plugin-DataFu - Dancer HTML Form and Grid/Table engine with Input Validation\n\nuse Dancer qw/:syntax/;\nuse Dancer::Plugin::DataFu;\n\n    # form rendering and validation\n\n    get 'login' =\u003e sub {\n        return form-\u003erender('form_name', '/action', 'profile.field', 'profile.field');\n        # return form-\u003erender('login', '/submit_login', 'user.login', 'user.password');\n    };\n    \n    post 'login' =\u003e sub {\n        my $input = form;\n        return redirect '/dashboard' if $input-\u003evalidate('user.login', 'user.password');\n        redirect '/login';\n    };\n    \n    # grid rendering\n    \n    # Important Note! The order arguments are received by the render function\n    # has now changed. Please examine.\n    \n    get '/user_list' =\u003e sub {\n        return grid-\u003erender('table_name', 'profile_name', $dataset);\n        # $dataset is an array of hashes\n    };\n    \n    # grid rendering with Dancer::Plugin::DBIC\n    \n    get '/user_list' =\u003e sub {\n        my $rs = schema-\u003eresultset('Foo');\n        $rs-\u003eresult_class('DBIx::Class::ResultClass::HashRefInflator');\n        return grid-\u003erender('table_name', 'profile_name', [$rs-\u003eall]);\n    };\n\n\nTo install this module using code from CPAN,\nrun the following commands\n\ncpan Dancer::Plugin::DataFu\n\nor\n\nperl Makefile.PL\nmake\nmake test\nmake install\n\nTo install this module using code from the git repository,\nrun the following commands (Dist::Zilla required):\n\ndzil build\ncd Dancer-Plugin-DataFu-#.##\ncpan .\n\nREPOSITORY\n\n  http://github.com/alnewkirk/Dancer-Plugin-DataFu/\n\nCOPYRIGHT AND LICENCE\n\nCopyright (C) 2010 Al Newkirk\n\nThis program is free software; you can redistribute it and/or modify it\nunder the same terms as Perl itself.","project_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fthroughnothing%2Fdancer-plugin-datafu","html_url":"https://awesome.ecosyste.ms/projects/github.com%2Fthroughnothing%2Fdancer-plugin-datafu","lists_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fthroughnothing%2Fdancer-plugin-datafu/lists"}