Php 通过Catalyst框架将数据导出到JSON
我使用MySQL创建了一个数据库,并将其连接到Catalyst框架,以创建一个web界面。 我必须可视化我的数据,使用它以JSON格式获取数据 我创建了一个php脚本,用于查询数据库并以JSON格式导出查询结果 不幸的是,我还没有找到在catalyst中使用php脚本的方法。是否有更好的方法查询数据库并以JSON格式导出数据,以便在我的d3.js图表中使用它们Php 通过Catalyst框架将数据导出到JSON,php,mysql,json,d3.js,catalyst,Php,Mysql,Json,D3.js,Catalyst,我使用MySQL创建了一个数据库,并将其连接到Catalyst框架,以创建一个web界面。 我必须可视化我的数据,使用它以JSON格式获取数据 我创建了一个php脚本,用于查询数据库并以JSON格式导出查询结果 不幸的是,我还没有找到在catalyst中使用php脚本的方法。是否有更好的方法查询数据库并以JSON格式导出数据,以便在我的d3.js图表中使用它们 非常感谢您的帮助。您可以通过以下方式呈现JSON 这将产生以下JSON: {"foo":"bar","array":[1,2]} 在M
非常感谢您的帮助。您可以通过以下方式呈现JSON 这将产生以下JSON:
{"foo":"bar","array":[1,2]}
在MyApp.pm中,您可以确认行为或视图::JSON:
__PACKAGE__->config->{'View::JSON'} = {
allow_callback => 1, # defaults to 0
# callback_param => 'bgm', # defaults to 'callback'
# expose_stash => [ qw(id status file error) ], # defaults to everything
};
您可以通过以下方式呈现JSON 这将产生以下JSON:
{"foo":"bar","array":[1,2]}
在MyApp.pm中,您可以确认行为或视图::JSON:
__PACKAGE__->config->{'View::JSON'} = {
allow_callback => 1, # defaults to 0
# callback_param => 'bgm', # defaults to 'callback'
# expose_stash => [ qw(id status file error) ], # defaults to everything
};
您可以按照Julien的建议使用Catalyst::View::JSON,但对于简单的情况:
=== SomeController.pm ===
package MyApp::Controllers::SomeController;
use strict;
use warnings;
use base 'Catalyst::Controller';
use JSON;
sub my_json_action :Local {
my ($self, $c, @args) = @_;
my $result = ... some process or logic ...
$c->res->body(to_json($result))
}
1;
它应该将$result
的JSONified版本返回给d3.js
如果您正在应用程序中编写大量AJAX代码,我绝对建议您先了解C::V::JSON方法。您可以按照Julien的建议使用Catalyst::View::JSON,但对于简单的情况:
=== SomeController.pm ===
package MyApp::Controllers::SomeController;
use strict;
use warnings;
use base 'Catalyst::Controller';
use JSON;
sub my_json_action :Local {
my ($self, $c, @args) = @_;
my $result = ... some process or logic ...
$c->res->body(to_json($result))
}
1;
它应该将$result
的JSONified版本返回给d3.js
如果您在应用程序中编写了大量AJAX代码,我绝对建议您先了解C::V::JSON方法。谢谢您的回答。我也发现了这个,但我不能完全理解我应该如何使用它。你能详细说明一下吗?非常感谢你的回答。我也发现了这一点,但我不能完全理解我应该如何使用它。您能详细说明一下吗?非常感谢您谈论的是perl Catalyst框架,对吗?因为在混合中引入PHP听起来非常不规则。是的,我说的是perl catalyst框架。我原以为我可以在catalyst中使用php,但现在我明白这是不可能的,我正在尝试找出替代方案。我设法在一个控制器中查询数据库,并将查询结果存储在一个变量中,然后将其保存起来,但我不知道如何将查询导出为JSON格式,以便在我的d3.js chartOK中使用。请参阅我的答案以获得进一步的解释。您正在谈论perl Catalyst框架,对吗?因为在混合中引入PHP听起来非常不规则。是的,我说的是perl catalyst框架。我原以为我可以在catalyst中使用php,但现在我明白这是不可能的,我正在尝试找出替代方案。我设法在一个控制器中查询数据库,并将查询结果存储在一个变量中,然后将其保存起来,但我不知道如何将查询导出为JSON格式,以便在我的d3.js chartOK中使用。请参阅我的答案以获得进一步解释。