0

データベースからデータを取得し、以下のように XML で応答を送信しています。

データを配列またはハッシュにフェッチしてから、xml に応答したい....または直接 xml を作成する..

以下のxmlの例を参照してください...

<Response>
    <Tolls>
        <Toll>
            <Id>123</Id>
            <Name>Bradfield Highway</Name>
            <Address>Bradfield Highway, New York</Address>
            <Charge>5.95</Charge>
            <Location lat="41.145556" lng="-73.995"/>
               <EntryRects>
                 <EntryRect>
                   <Points>
                      <Point lat="41.145556" lng="-73.995"/>
                      <Point lat="41.145556" lng="-73.995"/>
                      <Point lat="41.145556" lng="-73.995"/>
                      <Point lat="41.145556" lng="-73.995"/>
                   </Points>
                 </EntryRects>
                 ...
               </EntryRects>
         </Toll>
        <Toll>
            ...
        </Toll>
        ...
    </Tolls>
</Response>

わかる方いましたら至急回答お願いします...

4

2 に答える 2

0

使用しているデータベースはわかりませんが、通常の "select" ステートメントの出力を返す代わりに、多くのデータベースがクエリの結果として XML を生成できます。とにかくデータをアプリに返す必要があるため、これが最速/最も簡単なパスです。そのため、DBM にその場で変換を行わせます。

2 番目に簡単なのは、Nokogiri、 Builder 、または他のいくつかの gem のいずれかを使用することです。ASCII 以外の文字のエンコーディングを処理し、正しいヘッダーを指定して、ネストとタグ クロージャが正しいことを確認できます。膨大な量のコーディングを節約できるので、人々がこれらのツールを使用する理由です。

最後の選択肢は、自分でやろうとすることです。あなたが質問したという理由だけで、整形式の XML を作成するために何が必要かを本当に理解していないのではないかと思います。ERB やHAMLのようなものを使用して単純な XML 出力を生成してネストを支援することは可能ですが、エンコーディングはあなた次第です。どうしてもやりたい場合は、スタック オーバーフロー ページの右側にあるすべての関連リンクと、見つけられる XML ドキュメントを読み始めてください。

于 2013-01-28T14:55:39.687 に答える
0

XML マークアップとデータ構造を作成する簡単な方法を提供するBuilder::XmlMarkupを使用する必要があります。

于 2013-01-28T14:32:08.640 に答える