私が持っているもの:次のような値の単一セルによって生成されたテーブル:
<tr>
<%= render :partial => 'partials/fieldtypes/show_in_table', :locals => {:fieldtype => 'textline', :data => {'object' => object, 'value' => 'name'}, :vars => {'textline' => object.name}} %>
<%= render :partial...
</tr>
パーシャルは次のようになります。
<td class='tablecell' <% data.each do |dat| %>data-<%= raw(dat[0]) %>='<%= raw(dat[1]) %>' <% end %> >
<%= render :partial => 'partials/fieldtypes/show/'+fieldtype, :locals => {:vars => vars} %>
</td>
ここで、MS Excel のように、そのテーブルの単一のエントリ/セルをダブルクリックして編集したいと考えています。サイトは完全な JavaScript で実行されているため、ページはリンクされていません。
だから私が欲しいのは:ユーザーがフィールドを編集するたびに(ダブルクリックして)フォームを生成する(事前レンダリングや可視性の切り替えではありません!)。
これまでの私の考え:ご覧のとおり、フォームを生成するために必要なすべてのデータを html5 データタグに格納しようとしていました。セルがダブルクリックされるたびにコントローラー アクションを呼び出し、Rails とのデータベース接続でフォームを生成するという計画でした。
問題/質問:これはそのように機能しますか? タグ内のデータが変換され、それ以上のやり取りには役に立たないように見えるためです。それが機能する場合:適切なルートでそのためのコントローラーアクションを作成するにはどうすればよいですか?
または、より簡単な解決策はありますか?述べたように、フォームを直接非表示にしたくありません!