csvデータ内容の新規追加と編集をサポートする。

前回までは、CSVファイルの内容をリスト表示することは出来たが、データの追加や編集には不具合があった。UpdateやCreateのボタンを押すと、イージケーターがくるくる回り続けてしまう。確認した結果、以下のような原因が考えられる。

  • idフィールドのタイプがstringだったこと。
  • ボタンを押した時に:tableパラメータが送信されていなかったこと。

idフィールドのタイプについては、マイグレーションを利用してテーブルを追加するようにしたので解決済み。:tableパラメータについては、edit.rjsとnew.rjsの1行目を以下のように修正した。(:table => params[:table]を追加した。)

# app/views/edit.rjs
@options = { :scaffold_id => params[:scaffold_id], :action => "update", :id => params[:id], :table => params[:table] }
...(以下省略)...
# app/views/new.rjs
@options = { :scaffold_id => params[:scaffold_id], :action => "create", :id => generate_temporary_id, :table => params[:table] }
...(以下省略)...

以上で、新規追加と編集も出来るようになった。