2017-05-01 13 views
0

저는 처음에는 길들이기를 원하지만 절망적 인 atm 형식으로 초보자입니다. 이것은 매우 잘 작동button_to를 동적 선택 양식으로 바꾸기

<% @product.variants.each do |variant| %> 
    <div><%= variant.asin %></div> 
    <div><%= variant.price %></div> 
    <div><%= button_to "Add to cart", shopping_cart_path(:variant_id => variant) %></div> 
<% end %> 

, 그것이 함께 문제가, 그것은 각각의 제품에 대한 여러 버튼을 생성합니다

나는이 다음 button_to 설정을 가지고있다.

enter image description here

는 내가 달성하고자하는 것은 다음과 같이 하나의 버튼을 선택하는 것입니다. 이 해시를 동적으로 전달하기 위해 취해야하는 지침.

enter image description here

답변

1

당신은 select_tag를 사용하고는 form_tag 안에 중첩 사용할 수 있습니다. 내부에 select 태그가 포함 된 form이 표시됩니다. 위의 코드는 테스트되지 않지만, 그것은 당신에게 당신이 접근하는 방법에 대한 아이디어를 줄 것이다 :

<%= form_tag shopping_cart_path do %> 
    <%= select_tag('variant', options_from_collection_for_select(@product.variants, "id", "asin")) %> 
    <%= submit_tag "Create" %> 
<% end %> 

참고 :

코드는 다음과 유사합니다.

+0

감사합니다. @ florin-ionce,이 팁을주었습니다. 이 (: variant_id => variant)를 form_tag에 전달하는 방법에 대한 단서가 있습니까? – nacon

+0

@nacon 나는 이것 같이 작동해야한다고 생각한다. <% = select_tag ('variant_id', options_from_collection_for_select (@ product.variants, "id", "asin")) %>' –

+0

@ florin-ionce 덕분에, 고 밝혔다. 너는 나의 하루를 구했다! – nacon