レールのアクセス制御は、モデルレベルではなく、コントローラーレベルで行われます。その結果、railsは、モデルコード内から現在のユーザーやCookieなどにアクセスするためのメカニズムを提供しません。必要に応じて、メソッドへのパラメーターによってデータをモデルにフェリーで送ることができます。ただし、それは業界で最高のプログラマーの設計上の決定を無視することになるので、おそらくそれは良い選択ではないと思います。
言い換えれば、あなたがやろうとしていることをしないでください。モデルで物事を行う方法の知識を置きますが、コントローラーでそれらを行うことができる人の周りにコントロールを置きます。
一方、何らかの理由で現在のユーザーを保存しようとしている場合は、何らかの関連付け(またはmongoを使用しているためネストされたドキュメント)によって保存する必要があります。その場合は、current_user
を使用しないでください モデル内ではなく、attr_accessor
を作成します ユーザーの場合、モデルのインスタンスのユーザーをcurrent_user
に設定します コントローラに保存し、コールバックに必要な方法で保存します。