ruby-on-rails - 如何在rails中将current_user添加到user_id到form_for?

标签 ruby-on-rails form-for

我有一个用于创建 Material 的表单(标题、描述和内容 - 都是基本的)。表单很好地保存了这些细节,但它没有保存 user_id,它应该是 current_user 的 user_id。我该怎么做呢?这一定很容易,但到目前为止还没有任何效果。

def create 
   @material = Material.new(params[:material])
   if @material.save
     flash[:success] = "Content Successfully Created"
     redirect_to @material
   else
     render 'new'
   end
end

最佳答案

def create 
 @material = Material.new(params[:material])
 @material.user_id = current_user.id if current_user
 if @material.save
  flash[:success] = "Content Successfully Created"
  redirect_to @material
 else
  render 'new'
 end
end

关于ruby-on-rails - 如何在rails中将current_user添加到user_id到form_for?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/12759683/

相关文章:

ruby-on-rails - 使用 Rails 5,我如何在多个 Controller / Action 中 DRY'ly 定义实例变量?

jquery - 使用 jquery 创建数组并将其从表单传递到 Controller

javascript - 如何在 ember-from-for 中删除包装 div 或将其类型从 div 更改为 span?

ruby-on-rails - form_for 中未定义的方法 `user_path'

ruby-on-rails - Rails simple_form - 隐藏字段 - 创建?

ruby-on-rails - 在 Rails 模型/表中验证 presense 与 null false

ruby-on-rails - 在 Rails 4.2 中使用 Arel 的 WHERE 子句中的 OR 运算符

ruby-on-rails - 除非我刷新页面 form_for Rails,否则提交按钮不起作用

ruby-on-rails - 关于 rails 迁移和同步 View 的问题

ruby-on-rails - 注册时发生未定义的方法错误