1

私はこれについて混乱しています。実行可能な解決策がいくつかありますが、どちらも好きではありません。当面の問題は、Rails アプリケーションで CSV を生成しようとしていることです。具体的には、私のアプリケーションでは、約 30 の多くの値があります。表示したい値の多くは関連付けにもあるため、行がさらに長くなります...私が話していることを理解してもらいたかっただけです):

[piece.client.organization, piece.client.category, piece.client.name , piece.campaign.name, piece.name, piece_url(piece.id), piece.campaign.election_date, piece.campaign.win_loss, piece.final_date, piece.local_photos, piece.killed, piece.format_list, piece.artist_list, piece.partner_list, piece.account_executive_list, piece.out_of_stock, piece.total_intake, piece.campaign.candidate_tags, piece.client.spec_list, piece.campaign.mail_poll]

それらがさらに長くて扱いにくいことを除いて. それらは機能しますが、私は気分が悪くなります。これは、それらを 2 次元配列に入れるという考えを持っていたときであり、すぐにデータがはるかに読みやすくなりました。

[["Client",       piece.client.organization], 
["Category",      piece.client.category], 
["Client Name",   piece.client.name] , 
...
["Campaign Name", piece.campaign.name], 
["Piece Name",    piece.name]]

これで、ループして CSV 行を作成できるようになりました...ただし、「ピース」が定義されていないため、定義する必要がある場所に基づいて爆発します。それで、私は考えました... 2番目の引数を引用符で囲み、後で必要なときに eval を呼び出すとどうなるでしょうか? それから私はそれを調べました、そして人々は命を救うためだけに eval を使うと言っているようです...

すべてのデータを列名とペアにしたままにするより簡単な方法を誰かが考えられますが、eval を使用しないでください。それとも、これが eval の適切な使用例になると提案しますか?

4

1 に答える 1