我正在使用Perl / CGI,MySQL,Perl模板工具包。
我有一个数据库设置和一些perl模块来查询数据库。
从perl模块我传递数据结构(散列哈希)到perl模板工具包(.tt),并在网页上呈现结果。
我现在想添加一个将搜索结果下载到制表符分隔文件中的选项;即提供下载文件选项。我在perl模块中有一个子程序来转换为制表符分隔格式。我希望能够调用该子程序 将搜索结果转换为制表符分隔格式。我可以从模板工具包中的perl模块调用子例程吗?
我试图找出如何在不再查询数据库或不将结果存储在CACHE中的情况下生成可下载文件。
有没有办法将Perl模板呈现的数据结构(散列哈希)传递给Javascript(进一步调用子例程),然后生成可下载的文件?
请建议正确的方法。
感谢您的时间
答案 0 :(得分:3)
我可以从Template toolkit中的perl模块调用子例程吗?
You can,但对于这个问题没有意义。
您不需要任何模板功能,并且确实需要不同的Content-Type标头。在创建制表符分隔文件时,请勿使用TT。
我试图找出如何在不再查询数据库或不将结果存储在CACHE中的情况下生成可下载文件。
没有合理的方法可以做到这一点。您可以获得的最接近的是使用JavaScript解析生成的(通过TT)HTML文档中的数据(不使用您编写的Perl生成制表符分隔文件),然后build the tab separated file on the client, and make it available for download。
再次点击数据库会更简单,更容易,也更可靠。