[RUBY] Balisage commun: modifiez le chemin de l'URL pour chaque action

Aperçu

Dans l'article précédent, nous avons publié la standardisation des balises. Cliquez ici ↓ ↓ https://qiita.com/kazuko___3o3___/items/019174474f4f258ba19b

En fait, cet article était le principal: triomphe:

L'URL que vous souhaitez spécifier est différente pour chaque nouvelle action et action d'édition, et au début, j'ai écrit le code avec une instruction if, mais l'erreur a continué: cold_sweat: Je vais laisser un mémorandum sur la façon de le résoudre!

un événement

Auparavant, j'ai écrit un article Le chemin généré automatiquement par form_for est uniquement pluriel

Par conséquent, le HTML est décrit comme suit.

html:_form.html.haml


#réduction
.new_display
  = form_for @task, url: group_tasks_path do |f|
#réduction

[Group_tasks_path] n'est valide que pour la nouvelle action, et une erreur se produira pour l'action d'édition: scream:

Solution

Décrivez la partie ** form_for ** décrite dans la vue commune dans un fichier séparé: writing_hand:

before

html:new.html.haml/edit.html.haml


= render "form"

after

html:new.html.haml


= form_for @task, url: group_tasks_path do |f| 
  = render partial: "form", locals: {f: f} |= render "new_main"

html:edit.html.haml


= form_for @task, url: group_task_path do |f| 
  = render partial: "form", locals: {f: f} |= render "new_main"

En passant au contenu ci-dessus, le nouvel écran d'enregistrement sera affiché au moment de la nouvelle action, l'écran d'édition (y compris le contenu saisi sera reflété) au moment de l'action d'édition, et la création et la mise à jour étaient parfaites: rire:

référence

https://qiita.com/seiya1121/items/fba02afcd8d54f1628ba

Recommended Posts

Balisage commun: modifiez le chemin de l'URL pour chaque action
Spécifiez le délai d'expiration pour chaque chemin avec Rack :: Timeout