首页
学习
活动
专区
工具
TVP
发布
精选内容/技术社群/优惠产品,尽在小程序
立即前往

Rails 5:如何在fields_for中通过strong_params传递collection_select值?

在Rails 5中,可以通过使用strong_params来在fields_for中传递collection_select的值。下面是一个示例:

  1. 首先,在控制器中定义strong_params方法,以允许传递的参数:def strong_params params.require(:model_name).permit(:attribute_name, associated_model_attributes: [:id, :name]) end其中,model_name是你的主模型名称,attribute_name是你要传递的属性名称,associated_model是你的关联模型名称。
  2. 在视图中,使用fields_for和collection_select来创建表单字段:<%= form_for @model_name do |f| %> <%= f.fields_for :associated_model_attributes do |ff| %> <%= ff.collection_select :id, AssociatedModel.all, :id, :name %> <% end %> <%= f.submit %> <% end %>其中,model_name是你的主模型名称,associated_model是你的关联模型名称。
  3. 在控制器的create或update方法中,使用strong_params方法来接收传递的参数:def create @model_name = ModelName.new(strong_params) if @model_name.save # 保存成功的逻辑 else # 保存失败的逻辑 end end其中,ModelName是你的主模型名称。

这样,你就可以通过strong_params方法在fields_for中传递collection_select的值了。

关于Rails的更多信息,你可以参考腾讯云的Rails产品介绍页面:Rails产品介绍

页面内容是否对你有帮助?
有帮助
没帮助

相关·内容

领券