モーダル内に表示されたフォームでインデックスページを作成しようとしています。フォームはJSとしてPOSTアクションで提出された後、私の問題は、これは以下の説明ActionController :: GETでリダイレクトするInvalidCrossOriginRequest
セキュリティが強化されたエラーを与えるということである。この
def create
@output = Output.new(output_params)
respond_to do |format|
if @output.save
format.html { redirect_to @output, notice: 'Output was successfully created.' }
format.json { render :show, status: :created, location: @output }
format.js { redirect_to production_line_path @output.machine.production_line, machine_id: @output.machine_id, format: :js }
else
format.html { render :new }
format.json { render json: @output.errors, status: :unprocessable_entity }
end
end
end
などのJSとしてもredirect_to
アクション#index
で応答#create
アクションをトリガー警告:埋め込まれた<script>
タグが別のサイトにあり、保護されたJavaScriptが必要です。あなたが何をしているのか分かっているならば、先に進んでこのアクションの偽造防止を無効にして、クロスオリジンJavaScriptの埋め込みを許可してください。 35ミリ秒で
完成した422処理不能エンティティ。(再生回数:27.2ms | ActiveRecordの:は1.5ms)
ActionController :: InvalidCrossOriginRequest(セキュリティ警告:あなたは何を知っている場合は、別のサイトに埋め込まれた<script>
タグはJavaScriptを保護要求さ」クロスメディアのJavaScript埋め込みを許可するためにこのアクションで偽造防止を無効にしてください。):
これを間違った方法で実行しようとしているのかどうかはわかりません。 JSがリダイレクトされないようにレスポンスを変更する必要がありますか?同じコントローラーアクションからレンダリングする#create
?
なぜJSファイルをレンダリングするのではなく、 'format.js'でリダイレクトしていますか? – emaillenin
@emayenenin - 私が書いたように、これが正しい方法であるかどうかはわかりません。最初は、私が表示したいモデルのコントローラーから呼び出されたアクションをレンダリングする必要があると思いました。 – adass