instructeurs: make the create form not using email directly
Before the form attempted to read an email value from the Instructeur model, and failed (because the empty Instructeur had no user yet). We could let `Instructeur#email` return `nil` if there is no User – but as a created Instructeur is always supposed to have a User, this seems like a nice safeguard to keep. So instead this commit rewrites the create form, which now doesn’t depend on an Instructeur model. Seems easy enough for now.
This commit is contained in:
parent
d78d206544
commit
f131dbb80d
6 changed files with 11 additions and 16 deletions
|
@ -25,8 +25,6 @@ class Admin::AssignsController < AdminController
|
|||
not_assign_scope,
|
||||
partial: "admin/assigns/list_not_assign",
|
||||
array: true
|
||||
|
||||
@instructeur ||= Instructeur.new
|
||||
end
|
||||
|
||||
def update
|
||||
|
|
|
@ -7,8 +7,6 @@ class Admin::InstructeursController < AdminController
|
|||
current_administrateur.instructeurs,
|
||||
partial: "admin/instructeurs/list",
|
||||
array: true
|
||||
|
||||
@instructeur ||= Instructeur.new
|
||||
end
|
||||
|
||||
def create
|
||||
|
|
|
@ -9,15 +9,15 @@
|
|||
%h3
|
||||
= t('dynamics.admin.procedure.onglet_instructeurs.add.title')
|
||||
#procedure_new.section.section-label
|
||||
= form_for @instructeur, url: { controller: 'admin/instructeurs', action: :create } do |f|
|
||||
= form_with url: { controller: 'admin/instructeurs', action: :create } do
|
||||
.row
|
||||
.col-xs-5
|
||||
= hidden_field_tag :procedure_id, params[:procedure_id]
|
||||
= render partial: 'admin/instructeurs/informations', locals: { f: f }
|
||||
= render partial: 'admin/instructeurs/informations'
|
||||
.col-xs-2
|
||||
%br
|
||||
%br
|
||||
= f.submit 'Valider', class: 'btn btn-info', style: 'float: left;', id: 'add-instructeur-email'
|
||||
= submit_tag 'Ajouter', class: 'btn btn-info', style: 'float: left;', id: 'add-instructeur-email'
|
||||
.col-xs-6
|
||||
%h3.text-success Affectés
|
||||
= smart_listing_render :instructeurs_assign
|
||||
|
|
|
@ -1,5 +1,4 @@
|
|||
- { email: 'Email*' }.each do |key, value|
|
||||
.form-group
|
||||
%h4
|
||||
= value
|
||||
= f.text_field key, class: 'form-control', placeholder: value
|
||||
= 'Email *'
|
||||
= text_field_tag 'instructeur[email]', nil, class: 'form-control', placeholder: 'laura.azema@exemple.gouv.fr'
|
||||
|
|
|
@ -18,11 +18,11 @@
|
|||
.col-xs-6
|
||||
%h3 Ajouter un instructeur
|
||||
#procedure_new.section.section-label
|
||||
= form_for @instructeur, url: { controller: 'admin/instructeurs', action: :create } do |f|
|
||||
= form_with url: { controller: 'admin/instructeurs', action: :create } do
|
||||
.row
|
||||
.col-xs-5
|
||||
= render partial: 'informations', locals: { f: f }
|
||||
= render partial: 'admin/instructeurs/informations'
|
||||
.col-xs-2
|
||||
%br
|
||||
%br
|
||||
= f.submit 'Valider', class: 'btn btn-info', style: 'float: left;'
|
||||
= submit_tag 'Ajouter', class: 'btn btn-info', style: 'float: left;'
|
||||
|
|
|
@ -12,7 +12,7 @@ feature 'As an instructeur', js: true do
|
|||
fill_in :instructeur_email, with: instructeur_email
|
||||
|
||||
perform_enqueued_jobs do
|
||||
click_button 'Valider'
|
||||
click_button 'Ajouter'
|
||||
end
|
||||
end
|
||||
|
||||
|
|
Loading…
Reference in a new issue