2011-01-07 9 views
0

古いRails 1.xアプリを2.3.10にアップグレードしています。レンダリングビューに問題があります。私はそれに関連付けられて2つのビュー:index.hamlindex.rxmlコントローラがあります。アップグレードの前に、すべてが期待通りに機能しました。 Rails 2に移動した後、同じコード(変更なし)がwants.htmlブロックの最後にXMLビューを自動的にレンダリングし始めました。これはhamlビューをレンダリングする必要があります。 index.rxmlファイルの名前をfoo.rxmlなどの名前に変更すると、index.hamlファイルが見つかってレンダリングされます。Railsのアップグレード:hamlファイルの代わりにレンダリングされたrxmlファイル

これを引き起こしているビューレンダリングロジックがRails 1からRails 2に変更されましたか?

答えて

3

私はRailsの1に働いていない(でで飛びついたのRails 2)が、私はRailsの2が.rhtmlの代わりに.html.erbを使用していますので、それはだと思います。 .rxmlの代わりに.xml.erbも同じです。そして、同じことがHAMLにとっても起こりました:.hamlは.html.hamlになります。これがあなたの問題を引き起こすものかどうかは分かりませんが、それはRails 2のビュー作成方法です。

EDITまた

、あなたはRailsの2にXMLをレンダリングしたい場合、あなたはあなたのコントローラに以下を追加する必要があります。

respond_to do |format| 
    format.xml { render :xml_view_name } 
end 
+0

それを固定ビューの名前を変更します。私はレーキタスク[ここ](http://thelucid.com/2007/05/16/rails-edge-getting-your-view-extensions-ready-for-edge/)を使用しました。 – jrdioko

関連する問題