2017-10-31 17 views
0

私はRails 5を使用しています。ブラウザにアドレスを手動で入力しない限り、send_dataが機能しないのはなぜですか?

なぜsend_dataは表示されませんか? ブラウザに手動で入力したときに機能しました。 http://localhost:3000/docfiles/show/59f9f6a651d2f52dc080116c

このdefにはレイアウトやビューが必要ですか?ここで

は私のハードコード(この質問のための唯一のf1.png)です:

def show  
    data= read_binary('./upload/f1.png') 
    send_data(data, :filename=>'f1.png', :type=>'image/png', :disposition=>"inline") 
end 

mime_types.rb

Mime::Type.register "image/png", :png 

次に、ブラウザのバーで表示されます http://localhost:3000/docfiles/show/59f9f6a651d2f52dc080116c エラー:未定義と画像が表示されません。

enter image description here

しかし、私は(任意の拡張子なし)、その後、画像ファイルには、最大示す[ENTER]場合。!デフだけlink_to_blank とSEND_DATAと作成されたビューを削除するコントローラで enter image description here

+0

より多くのコードを含め、あなたの質問に多くの情報を追加してください。あなたは何を達成しようとしていますか?関連するモデル、ビュー、コントローラの完全なコードを共有します。 – Ankit

+0

'send_data(data.read、:filename => doc.filename、:type => doc.content_type、:disposition =>" inline ")' – Cyzanfar

+0

try:====> NoMethodError - 未定義のメソッド 'read 'のために#

答えて

0

(私は使用のlink_to場合は、同じ問題を発見した)

 %td= link_to_blank align_text(doc.filename), :controller=>"mycontroller", :action=>:listdocument, :id=>doc.id 
関連する問題