rails:2667
From: Shota Onishi <s-onishi@a...>
Date: Fri, 02 May 2008 14:02:18 +0900
Subject: [rails:2667] Re: route 指定と image_tag url_for( 〜 ) で、アプリ名が2回繰り返される
大西です。 原因は、image_tagヘルパ(最終的にはcompute_public_path)が「http: //xxxx/xxx/xxxx」形式(フル URI?)に対応していないということだと思います。 ちょっと古めですが、ソース↓を見ると対応していないっぽいです。 http://railsapi.masuidrive.jp/module/ActionView::Helpers::AssetTagHelper/compute_public_path tagは単純にXHTMLタグを組み立てて出力するシンプルなヘルパなので、そちらで なんでも対応できるということです。 ただ、rails2.0.2のcompute_public_pathを見てみたらフルURIも考慮されていそ うな雰囲気だったので、最近は対応しているのかもしれません。 http://github.com/rails/rails/tree/master/actionpack/lib/action_view/helpers/asset_tag_helper.rb ちなみに、ぱんさんのRailsのバージョンは幾つですか? roppongitoppogi@y... さんは書きました: > ぱんです > 大西さん、ありがとうございました。 > > 問題なく画像が表示されるようになりました。 > よろしければ、原因・解決の理由について、 > 簡単に(ヒントを)教えていただけませんでしょうか。 > ヒントいただければ、ググって調べます。 > > お手数でなければ、よろしくお願いします。 > > --- Shota Onishi <s-onishi@a...> wrote: > > >> 大西と申します。 >> >> image_tagのところをこんなふうにしたらどうですか? >> >> tag('img', :src => url_for(:action => 'file', >> :id => atch.id, >> :filename => atch.name), >> :alt => h(atch.name) >> ) >> >> >> roppongitoppogi@y... さんは書きました: >> >>> ぱんと申します >>> >>> >>> >> artonさんの「10日で〜」という本を元に、メールでアップ >> > ロ > >> ードしたファイルを、Web上に表示させるアプリを作ってい >> > ま > >> す。アップロードされた画像をMySQLに保存し、後述の設定 >> > で > >>> 呼び出すと; >>> >>> >>> >> ▽「/app_name/memos/show/21」にて<gif画像>を表示しよ >> > う > >>> とした場合 >>> <img alt="20080426173214.jpg" >>> >>> >> src="/app_name/app_name/memos/file/7/20080426173214.jpg" >> >>> /> >>> >>> ※アプリ名が複数繰り返される >>> >>> >>> >> ▽「/app_name/memos/show/22」にて<画像以外>にリンク >> > を > >>> 貼ろうとした場合 >>> <a >>> >>> > href="/app_name/memos/file/8/document.txt">document.txt</a> > >>> ※アプリ名は問題なく、1回だけ表示される >>> >>> という感じになってしまい、画像が表示されません。 >>> >>> >> ※ローカルで、本の通りに作業していた際は問題なかったの >> > で > >> すが、レンタルサーバ上でごりごりカスタマイズしてやりだ >> > し > >>> たら問題となりました。 >>> >>> >>> >>> >> 何か、見直すべき点がありましたらご指摘下さい。よろしく >> > お > >>> 願いします。 >>> >>> >>> ▼config/routes.rb >>> # Install the default route as the lowest >>> >> priority. >> >>> map.connect >>> >> ':controller/:action/:id/:filename.:fileext' >> >>> map.connect ':controller/:action/:id/:filename' >>> map.connect ':controller/:action/:id.:format' >>> map.connect ':controller/:action/:id' >>> >>> ▼app/views/memos.rhtml >>> <% for attachment in @memo.attachments %> >>> <tr> >>> <% for column in >>> >> @memo.attachments.content_columns %> >> >>> <td><%= format_attachment_column_value >>> >> attachment, >> >>> column.name %></td> >>> >> >> >>> >>> <% end %> >>> </tr> >>> <% end %> >>> >>> ▼app/helpers/memos_helper.rb >>> def format_attachment_column_value(atch, >>> >> colname) >> >>> if colname == 'content' >>> if atch.content_type =~ >>> /image\/(x-|p)?(jpe?g|png|gif)/ >>> image_tag url_for(:action => 'file', >>> :id => atch.id, >>> :filename => atch.name), >>> :alt => h(atch.name) >>> else >>> link_to h(atch.name), {:action => 'file', >>> :id => atch.id, >>> :filename => >>> >> atch.name} >> >>> end >>> else >>> h atch.send(colname) >>> end >>> end >>> >>> >>> 以上 >>> >>> >>> >>> -- >>> ML: rails@r... >>> 使い方: http://QuickML.com/ >>> >>> >>> >> -- >> ML: rails@r... >> 使い方: http://QuickML.com/ >> >> > > > -- > ML: rails@r... > 使い方: http://QuickML.com/ > > -- ML: rails@r... 使い方: http://QuickML.com/
2662 2008-05-01 11:24 [roppongitoppogi@y...] route 指定と image_tag url_for( 〜 )で、アプリ名が2回繰り返される 2663 2008-05-01 13:07 ┣[someeda@g... ] 2664 2008-05-01 19:57 ┃┗[roppongitoppogi@y...] 2665 2008-05-02 02:07 ┗[s-onishi@a... ] 2666 2008-05-02 04:06 ┗[roppongitoppogi@y...] -> 2667 2008-05-02 07:02 ┗[s-onishi@a... ] 2668 2008-05-02 08:01 ┣[someeda@g... ] 2669 2008-05-02 11:13 ┗[roppongitoppogi@y...]