3

私は主にRubyonRailsであるプロジェクトに取り組んでいます。ただし、このプロジェクトではExcelファイルを生成して解析する必要があるため(わかっています、わかっています...)、PerlのSpreadsheet::WriteExcelとSpreadsheet::ParseExcelを使用しています。しかし、このPerlの使用をより大きなRuby on Railsアプリと組み合わせる最良の方法は何ですか?バックティックを使用してPerlスクリプトを呼び出すことは、これを回避するためのコーシャの方法ですか?それは私には少しハッキーな感じがしますが、それが唯一の(または最良の)方法である場合は、それが私が行うことです。私は連絡を取り、他の誰かがいくつかの提案やアドバイスを持っているかどうかを確認したかった。

ありがとうございました!

4

3 に答える 3

5

spadsheet gemもありますが、執筆には使用したことがありません。

バッククォートや を使用することに本質的に問題があるとは思いません%x()が、代わりに Perl のものをサービスとして公開して、もう少し汎用的にすることもできます。ただし、やり過ぎの可能性があります。

于 2012-06-02T14:11:16.423 に答える
3

Mojoliciousのような Perl webapp フレームワークを使用して、単純な RESTful アプリケーションを作成することを検討するかもしれません。RoR アプリは Perl アプリを呼び出すだけで、JSON を取得できます。

これは非常に単純なアプリです。もちろん、あなたget_dataは何かをするでしょう。単純なハッシュを返すだけです。morbo myapp.plMojoliciousをインストールしたら、組み込みサーバーの 1 つを使用して実行できますmyapp.pl

#!/usr/bin/env perl
use Mojolicious::Lite;

get '/:query' => sub {
  my $self = shift;
  my $query = $self->param( 'query' );
  my $data = get_data( $query );
  $self->render( json => $data );
};

app->start;

sub get_data {
  my $query = shift;
  # do something here, like parse some excel file
  # I will just make some silly data
  my $data = { $query => $query };
  return $data;
}
于 2012-06-03T02:31:56.913 に答える
1

サードパーティのものがどれだけサポートされているかはわかりませんが、Ruby-perlプロジェクトがあります。Ruby に Perl を埋め込むプロジェクトです。

于 2012-06-03T04:33:47.323 に答える