0

私はプロジェクトモデルを持っています。Project モデルと Devise User モデルには 1 対多の関連付けがあります。Projects フォーム データを送信する前に、Devise を使用してユーザーに ajax ログインを実行してもらいたい。

Ajax ログインは正常に機能します。しかし、ログイン後にプロジェクト フォームを送信しようとすると、認証トークン エラーが発生します。これは、セッション トークンの変更によるものだと理解しています。しかし、この種のユーザー フローを維持する方法はあるのでしょうか。

4

1 に答える 1

1

簡単なjQueryコードで修正したと思います。私は基本的に、サインイン後に親フォームの既存の認証トークンを新しいものに置き換える必要がありました/devise/sessions/create.js.erb.

同じファイルに次の jQuery コードを追加して、フォーム上の既存の認証トークンを、ログイン後に生成された新しい認証トークンに置き換える必要がありました。

$("input[name='authenticity_token'").val("<%= form_authenticity_token %>");
于 2016-01-16T08:03:21.353 に答える