0

我现在在我的 API 中切换到 http 基本授权以使测试更容易,但现在我无法获得 user_id ......这是我的 ThingController 中与设计一起使用的代码:

  def create
    @thing = Thing.new(params[:thing])
    @thing.user_id = current_user.id
    @thing.save
    if @thing.save
      redirect_to user_path
    else
      render :new
    end
  end

这现在给了我以下错误:

为 nil 调用 id,它会错误地为 4 - 如果你真的想要 nil 的 id,请使用 object_id

它引用了这条线

@thing.user_id = current_user.id

我不确定如何在创建时将 user_id 分配给我的事物。任何帮助将不胜感激。

4

1 回答 1

0

你似乎没有得到答案。我遇到了同样的问题。我发现这个 wiki 使用 https://github.com/plataformatec/devise/wiki/How-To:-Redirect-back-to-current-page-after-sign-in,-sign-out,-sign-up ,-更新
您在以下方法中声明登录名的位置

  def after_sign_in_path_for(resource)    
    some_class_url(session[:some_class_id])
  end

这使您可以针对目标操作执行所需的操作

于 2013-10-02T14:11:34.143 回答