Activerecord Rails4//使用其他参数附加强_参数

Activerecord Rails4//使用其他参数附加强_参数,activerecord,ruby-on-rails-4,parameters,mass-assignment,Activerecord,Ruby On Rails 4,Parameters,Mass Assignment,让我们假设以下操作的控制器: class PostsController < ApplicationController def create @post = Post.create(post_params) end private def post_params params.require(:post).permit(:title, :content) end end 什么是干净的方法呢

让我们假设以下操作的控制器:

class PostsController < ApplicationController

    def create
        @post = Post.create(post_params)
    end

    private
        def post_params
          params.require(:post).permit(:title, :content)
        end

end

什么是干净的方法呢?有可能吗?

params
是ActionController::Parameters的一个实例,它继承自哈希。您可以使用它执行任何可能使用任何哈希的操作:

@post = Post.create(post_params.merge user_id: current_user.id)
或者

@post = Post.create(post_params.merge user_id: current_user.id)
post_params[:user_id] = current_user.id
@post = Post.create(post_params)