0

ユーザーが削除または分析する特定のファイルを選択できるコードがあります。

 <% if @files%>    
    <%= form_tag what_to_do_files_path, method: :get do %>
    <%= submit_tag "Delete selected", :name => 'delete' %>
    <%= submit_tag "Analyse", :name => 'analyse' %>
      <% @files.each do |file| %>
        <% if (file.analyzed=="no") %>
            <p><td> <%= check_box_tag "files[]", file.id %></td><%= file.name %></p>       

        <% else %>      

        <div class="my_profile_info">     
        <p><td> <%= check_box_tag "files[]", file.id %></td> <%= file.name %></p>        

        <td class="Info">
        <a href="<%=file.info%>" target ="_blank" class= "btn btn-mini btn-info">Info</a>  
        </td>  

         </div>

        <% end %>
      <%end%>
    <%end%> 
    <%else%>
    <%end%>

すべての分析に名前を付けることができる必要があります。
例: ユーザーは 3 つのファイルを選択し、テキスト フィールド「年間利益の分析」に名前を入力し、「分析」ボタンをクリックします。「年間利益の分析」という名前と選択されたファイルの名前は、テーブル group_analysis に保存する必要があります。submit_tag "Analyse" の後に次のようなことを試しました。

<%= form_for @groupanalysis do |f| %>
      <div class="field_label">
        <%= f.label :group_name, "Type group name hier" %>
      </div>

  <br class="clear" />
  <br />

<% end %> 

しかし、それは私に言いますundefined method model name

前もって感謝します。

4

1 に答える 1

0

一歩下がって、このフォームが作成または更新しようとしているモデルをどのように表しているかを考える必要があると思います。一般に、form_forandの最初の引数form_tagは、それぞれ対象のモデルを表すオブジェクトとシンボルです。フォーム フィールドは、オブジェクトの各属性にマップされます。

規則や:url引数に従って、これは適切なコントローラーにルーティングされ、HTTP 動詞に従ってアクションを呼び出します (レールの多くの規則の一部です)。

コード例に戻ると、form_tagヘルパーを間違って使用しており、使用している例form_forが正しい実装ではない可能性があります。たとえば、ラベルを表示するだけで、入力も送信もありません。

ここにリンクを投稿してドキュメントを読むように言うのは嫌いですが、この場合、これが最善の第一歩だと思います。

http://api.rubyonrails.org/classes/ActionView/Helpers/FormHelper.html#method-i-form_for

于 2013-05-20T12:07:52.677 に答える