diff --git a/app/controllers/units_controller.rb b/app/controllers/units_controller.rb index 87c67ea..95efe11 100644 --- a/app/controllers/units_controller.rb +++ b/app/controllers/units_controller.rb @@ -19,8 +19,8 @@ class UnitsController < ApplicationController def create @unit = current_user.units.new(unit_params) if @unit.save + @before = @unit.successive flash.now[:notice] = t('.success', unit: @unit) - run_and_render :index else render :new end diff --git a/app/helpers/application_helper.rb b/app/helpers/application_helper.rb index 3cdfb83..99f3d8c 100644 --- a/app/helpers/application_helper.rb +++ b/app/helpers/application_helper.rb @@ -122,7 +122,9 @@ module ApplicationHelper end def render_no_items - tag.tr tag.td t('.no_items'), colspan: 10, class: 'hint' + tag.tr id: :no_items do + tag.td t('.no_items'), colspan: 10, class: 'hint' + end end def render_turbo_stream(partial, locals = {}) diff --git a/app/views/units/create.turbo_stream.erb b/app/views/units/create.turbo_stream.erb new file mode 100644 index 0000000..21265d5 --- /dev/null +++ b/app/views/units/create.turbo_stream.erb @@ -0,0 +1,4 @@ +<%= turbo_stream.close_form dom_id(Unit.new) %> +<%= turbo_stream.remove :no_items %> +<%= turbo_stream.replace @unit.base unless @unit.base.nil? %> +<%= @before.nil? ? turbo_stream.append(:units, @unit) : turbo_stream.before(@before, @unit) %>