У меня есть эта модель, названная 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 способ сделать это?