我有一个表单已提交给PaymentNotificationsController
创建操作。
变量以>形式出现。我在重要的变量中添加了星星。
Parameters: {**"item_number1"=>"4"**,
**"option_name1_1"=>"Size: UK - 4, Color: Red"**, "contact_phone"=>"035-683-3582",
"txn_id"=>"XXXXXXXXXXXXXXXX", "payment_type"=>"instant", "last_name"=>"Bye Bye",
**"item_name1"=>"BLACK Dress"**, "receiver_email"=>"xxxx@xxxx.com", **"quantity1"=>"1",**
"insurance_amount"=>"0.00"}
带有星星的变量的格式为item_name1, item_number1, option_name1, quantity1
。如果购物车中有2件商品,那么还会有item_name2, item_number2, option_name2, quantity2
。
我需要一种方法从此哈希中提取这些变量并使用它创建PaymentNotification
。
这是PaymentNotification创建操作:
class PaymentNotificationsController < ApplicationController
protect_from_forgery except: [:create]
def create
PaymentNotification.create!(params: params,
item_number: params[:item_number], item_name: params[:item_name], quantity: params[:quantity]
render nothing: true
end
end
这是一个github Gist,如果它能给出更好的画面,我尝试了一个循环,但它不起作用&gt; https://gist.github.com/d1t/7f3a9451500579da617134468beeca96
提前致谢!
答案 0 :(得分:1)
Model
在这里,我们选择那些以数字结尾的参数,将它们转换为TestClass
构造函数接受的哈希值,然后创建与项目一样多的通知。