質問編集履歴
1
form_tagをform_withに変える作業をしていた際に出た同様の問題について、追記致しました。
test
CHANGED
@@ -1 +1 @@
|
|
1
|
-
|
1
|
+
cocoonで複製した項目がforbid_login_userに引っ掛かり保存されない
|
test
CHANGED
@@ -176,7 +176,7 @@
|
|
176
176
|
|
177
177
|
### 該当のソースコード(users_controller.rb)
|
178
178
|
|
179
|
-
またここで「redirect_to("/users/#{@user.id}")」と設定しているのですが、application_controller.rbに「protect_from_forgery with: :null_session」の一文を入れた直後は該当ページにリダイレクトされますが、それ以降は「
|
179
|
+
またここで「redirect_to("/users/#{@user.id}")」と設定しているのですが、application_controller.rbに「protect_from_forgery with: :null_session」の一文を入れた直後は該当ページにリダイレクトされますが、それ以降は「/posts/index」にリダイレクトされてしまいます。その際、application_controller.rbのforbid_login_userで設定した"すでにログインしています"のフラッシュも表示されます。
|
180
180
|
|
181
181
|
```rails
|
182
182
|
|
@@ -313,3 +313,95 @@
|
|
313
313
|
RubyGems 3.0.3
|
314
314
|
|
315
315
|
Rails 5.2.3
|
316
|
+
|
317
|
+
|
318
|
+
|
319
|
+
### 追記
|
320
|
+
|
321
|
+
|
322
|
+
|
323
|
+
まだ解決していない為、問題のあったcocoonで複製した部分はコメントアウトで一旦消して、form_tagをform_withに変える作業を先に進めておりました。するとここでも、保存ボタンを押しても内容が保存されず、「/posts/index」にリダイレクトされる問題が発生しました(おそらくforbid_login_userによるもの)。
|
324
|
+
|
325
|
+
ログイン中にはアクセスできないページ(新規登録ページ等)に行こうとしている訳ではないにも関わらず、なぜこのようなリダイレクトになってしまうのかが分かりません…。
|
326
|
+
|
327
|
+
|
328
|
+
|
329
|
+
### 該当のソースコード(users#edit.html.erb)
|
330
|
+
|
331
|
+
|
332
|
+
|
333
|
+
```Rails
|
334
|
+
|
335
|
+
<%= form_with(model: User, local: true) do |f| %>
|
336
|
+
|
337
|
+
<p>
|
338
|
+
|
339
|
+
<%= f.label :ユーザー名 %>
|
340
|
+
|
341
|
+
<%= f.text_field :name, value: @user.name %>
|
342
|
+
|
343
|
+
</p>
|
344
|
+
|
345
|
+
<p>
|
346
|
+
|
347
|
+
<%= f.label :画像 %>
|
348
|
+
|
349
|
+
<%= f.file_field :image %>
|
350
|
+
|
351
|
+
</p>
|
352
|
+
|
353
|
+
<p>
|
354
|
+
|
355
|
+
<%= f.label :カバー画像 %>
|
356
|
+
|
357
|
+
<%= f.file_field :cover_image %>
|
358
|
+
|
359
|
+
</p>
|
360
|
+
|
361
|
+
<p>
|
362
|
+
|
363
|
+
<%= f.label :メールアドレス %>
|
364
|
+
|
365
|
+
<%= f.email_field :email, value: @user.email %>
|
366
|
+
|
367
|
+
</p>
|
368
|
+
|
369
|
+
<p>
|
370
|
+
|
371
|
+
<%= f.label :性別 %>
|
372
|
+
|
373
|
+
<%= f.radio_button :sex, :Male %>男
|
374
|
+
|
375
|
+
<%= f.radio_button :sex, :Female %>女
|
376
|
+
|
377
|
+
</p>
|
378
|
+
|
379
|
+
<p>
|
380
|
+
|
381
|
+
<%= f.label :国籍 %>
|
382
|
+
|
383
|
+
<%= f.country_select :country, selected: @user.country %>
|
384
|
+
|
385
|
+
</p>
|
386
|
+
|
387
|
+
<p>
|
388
|
+
|
389
|
+
<%= f.label :言語 %>
|
390
|
+
|
391
|
+
<%= select_tag(:language, options_for_select(languages)) %>
|
392
|
+
|
393
|
+
</p>
|
394
|
+
|
395
|
+
<p>
|
396
|
+
|
397
|
+
<%= f.label :自己紹介 %>
|
398
|
+
|
399
|
+
<%= f.text_area :introduction, rows: "10", cols: "100", value: @user.introduction %>
|
400
|
+
|
401
|
+
</p>
|
402
|
+
|
403
|
+
<%= f.submit "保存" %>
|
404
|
+
|
405
|
+
<% end %>
|
406
|
+
|
407
|
+
```
|