【问题标题】:Rails submit different fields to different controllers in formRails 以表单形式向不同的控制器提交不同的字段
【发布时间】:2013-11-25 03:17:59
【问题描述】:

我有一个表单设置并希望它:

姓名、地址(和其他地址详细信息)提交到我的BillingAddress

虽然

credit_card_number 等将提交给 PaymentMethod

我在表单字段中使用了诸如 f.text_field 之类的东西。

但是,我的付款方式有一个 billing_address_id,所以我希望它向 BillingAddress 提交指定的数据,创建新实例,然后将其 id 分配给 PaymentMethod,同时将其他数据提交给付款方式。

旁注: 我知道我应该将信用卡号码保存在数据库中,稍后我将使用 gem 来正确处理这些数据,但现在,我只想了解基本结构。

【问题讨论】:

  • BillingAddress 和 PaymentMethod 之间有关联吗?
  • 是的,正如我所说,PaymentMethod 有一个 billing_address_id,它有一个帐单地址。

标签: ruby-on-rails webforms


【解决方案1】:

在创建 BillingAddress 时使用它

@billing_address = BillingAddress.create(params[:billingaddress])
@billing_address.payment_method.create(payment_method_params)

【讨论】:

  • 啊,好吧,所以只提交给一个控制器,但是对模型的每个堆栈/级别都这样做吗?我猜另一件事是,使用 f.text_field 或任何标签,如果我使用来自不同控制器的方法,则会发生错误。
  • @FengHuo 你能添加你的代码吗?所以我会为你提供详细的答案。
猜你喜欢
  • 2017-10-05
  • 1970-01-01
  • 2017-03-23
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
相关资源
最近更新 更多