[前][次][番号順一覧][スレッド一覧]

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...]