0

「バリアント」パーシャルで「製品」モデルから変数を呼び出そうとしています。次を使用して、「バリアント」から既存の変数を呼び出すことができます。

 <%= f.object.product_id %>

しかし、私はこれを機能させることができません:

<%= f.object.product.id %>

私がすることができます:

<%= f.object.product %>

しかし、それは戻ってき#<Product:0x007fee2c9a8ec8>て、私はそれをどうするかわかりません!

状況のより詳細な概要は次のとおりです。

has_many の「製品」を持つ「ストア」モデルがあります。各「製品」には多数の「バリエーション」があります。バリアントはネストされています。「/store/show.html.erb」ファイルは次のとおりです。

  <% @store.products.each do |product| %>
    <tr>
      <td>
        <%= form_for(product) do |f| %>
          <%= f.fields_for :variants do |builder| %>
            <%= render 'variant_fields', f: builder %>
          <% end %>
      </td>
    </tr>
  <% end %>

そして、ここに「/store/_variant_fields」のパーシャルがあります:

<fieldset>
    </table>
       <tbody>
          <tr>
             <td><%= f.label :variant_name %><%= f.text_field :variant_name %></td>         
         </tr>
      </tbody>
    </table>
</fieldset>
4

1 に答える 1