我有2个标签(表格)的页面,用于编辑一个对象。
E.g。用户的信息。在第一个标签中有个人信息,在下一个标签中有结算信息。
每个表单都有自己的提交按钮。我如何分别验证字段。如果我理解正确,当我尝试提交包含4个字段(10个)的表单时,它会引发错误,其他字段(6个中的10个)会出错。
这样做的正确方法是什么?
答案 0 :(得分:0)
创建2个类以反映您的UI:
class User
has_one :user_info
has_one :billing_info
end
class UserInfo
belongs_to :user
# add your validation
end
class BillingInto
belongs_to :user
# add your validation
end
在您的控制器中:
def edit
@user = User.find(params[:id])
@user_info = @user.build_user_info
@billing_info = @user.build_billing_info
end
然后在你的观点中:
= form_for @user_info do |f|
= form_for @billing_info do |f|
您需要2个控制器来处理POST
个请求。应分别命名为UserInfosController
和UserBillingInfosController
。