Rails - 两种形式合二为一(ShopifyAPI)

时间:2016-09-29 13:54:55

标签: ruby-on-rails ruby forms shopify

我正在开发的应用程序的一部分涉及一个表单,该表单必须在用户shopify商店上创建产品,并且还在我自己的数据库中为相同的产品创建一行(带有一些额外的信息)。

我正在努力的是表单本身,我可以使用基于html的表单来做到这一点,但我无法获得单个ruby表单来完成这两项工作。我的控制器创建代码的缩短版本如下;

def create
    @item = Item.new
    @item.item_title = params[:item_title]
    @item.item_profit = params[:item_profit]
    @new_product = ShopifyAPI::Product.new
    @new_product.title = params[:item_title]
    @new_product.save
    @item.save
end

因此,您可以看到我使用相同的参数来设置shopify产品和我自己的数据库中的产品的值。 HTML表单如下所示:

<form action="/items/submit" >
  <input type="text" name="item_title">
  <br>
  <input type="text" name="item_profit">
  <br>
  <br>
  <input type="submit"/>
</form>

它工作正常,但我如何将其转换为执行相同工作的红宝石形式?

1 个答案:

答案 0 :(得分:1)

你可以这样做:

form_tag('/items/submit')
  text_field_tag 'item_title'
  tag("br")
  text_field_tag 'item_profit'
  tag("br")
  tag("br")
<%= submit_tag 'Save' %>

代替标记(&#34; br&#34;),您可以直接使用&lt; br /&gt;。