【发布时间】:2019-01-12 03:24:48
【问题描述】:
我有一个名为products 的模型,它有一个id、user_id 和product_name。
我有一个简单的form_for 传递给我的product_controller product_name 参数。在同一个控制器中,我可以访问current_user,我必须通过它才能创建一个新的Product。
问题是user_id 总是必须是当前登录的用户,所以我不能允许用户在我的form_for 中向我发送这个参数,因此我也不能permit 它。
我现在正在做的是使用user_id 参数创建一个新的哈希,并合并来自form 的参数。
products_controller.rb:
def create
product_user_id_param = { "user_id": current_user.id.to_s }
@product = Product.new(product_user_id_param.merge(params[:product_name]))
...
end
有没有更方便或 Rails 的方式来做到这一点?
【问题讨论】:
标签: ruby-on-rails