久保清隆のブログ

ライフハック、健康、旅行など、役立つ情報を書きます。

Ruby on Railsで画像をアップロードする

画像をアップロードする時に、idも渡したい場合

自分用のメモ。

<% form_tag(:action => "edit_confirm",
            :multipart => true,
            :id => @instance) do %>
  <%= file_column_field "hoge", "fuga", "size" => 50 %>
  <%= submit_tag "確認画面へ" %>
<%- end -%>

だと、multipart => true が効かず、アップされるものがStringクラスのままだった。

<% form_tag({:action=>"edit_confirm"},
            {:multipart => true},
            {:id=>@instance}) do %>
  <%= file_column_field "hoge", "fuga", "size" => 50 %>
  <%= submit_tag "確認画面へ" %>
<%- end -%>

にすると、multipart => true は有効になったが、idは渡されていなかった。

<% form_tag({:action => "edit_confirm", :id => @instance},
            {:multipart => true}) do %>
  <%= file_column_field "hoge", "fuga", "size" => 50 %>
  <%= submit_tag "確認画面へ" %>
<%- end -%>

にすると、うまくいった。


:idは第一引数に入れるのか。

ちなみにpc_emoticon_filterを使ってると、
"#":String
というエラーが出た。
pc_emoticon_filterを消すとうまくいった。