2012-02-17 15 views
0

Ruby Builderを使用してXMLドキュメントを生成する方法を作成しています。XML Builderコードはどこに置く必要がありますか?

ここで、XMLマークアップを作成したメソッドはありますか?モデル上のメソッドでなければならないのでしょうか?

私は、XMLドキュメントを複数のモデルから関連付けてプルする予定であるため、コントローラまたはヘルパーに入れておく必要があると思いますが、最適な場所に配置したいと思っています。

答えて

2

実用的であれば、私はあなたのビューフォルダに入れます。これにより、従来の「コントローラの読み込み」、「ビュー内の要素のレンダリング」といった従来のパターンに従うことができます。また、独自のファイルで途切れることのない、きわめて特殊なメソッドを保持するという特別な特典があります。

Ruby Builderのテンプレート形式があるかどうかはわかりませんが、コードをそのまま<%= ... %>にラップして、通常のERBファイルのように扱うことができます。

希望に役立ちます!

+0

OK、そのコントローラのビューフォルダで処理を進めます。ドキュメントでは、私はxmlのためのユーザビルダをすべきだと言います。ありがとうございました – holaSenor

+0

ビルダーは私が扱っている名前空間の問題のいくつかを処理できませんでしたので、nokogiriに切り替えることを余儀なくされました。 – holaSenor

+0

@opensourcechris - 私はまだビューフォルダに残しておきます。レンダリングを正しく処理する方法は、データがどのように見えるかによって異なります。単純な場合は、常に '<%= ... %>'トリックを使用できます。もっと複雑な場合は、[独自のレンダリングフォーマットの定義](http://www.engineyard.com/blog/2010/render-options-in-rails-3/)を見ることができます。それではまた、あなたは/ libにそれを貼り付けることができます - 私の個人的な好みがあなたの技術的な困難にならないようにしてください! –

関連する問題