在我的应用程序中,我想添加功能以在一个操作中创建多个对象:
on localhost:3000/bank_accounts/new
我有一个用于创建@bank_account
= simple_form_for @bank_account do |f|
= f.input :bank_name
= f.input :account_number
= f.button :submit
控制器:
def new
@bank_account = BankAccount.new
end
def create
@bank_account = BankAccount.create(bank_params)
if @bank_account.save
redirect_to root_url
else
render 'new'
end
end
是否有方法在BankAccount
上创建localhost:3000/bank_accounts/new
的多个对象?
答案 0 :(得分:0)
在我看来,你应该遵循'标准'的方式, 可能银行账户属于用户, 所以你有一个属于用户的BankAccount,而一个用户有很多BankAccounts。
在这种情况下,在控制器中你应该有:
@user = User.find 1234 # get a user
10.times do
@user.bank_accounts.build
end
在视图中,您应该使用循环为所有用户的银行帐户创建字段(您可以使用users_for)
最后,要创建这些银行帐户,您甚至可以使用质量分配:
accepts_nested_attributes_for :bank_accounts
我希望这有助于:)