Improve remove creation using Ajax

This commit is contained in:
Chaitanya 2017-04-06 01:41:16 +05:30
parent c149710da4
commit 5f514bfb4c
4 changed files with 15 additions and 11 deletions

View file

@ -3,6 +3,7 @@ module Admin
load_and_authorize_resource :conference, find_by: :short_title load_and_authorize_resource :conference, find_by: :short_title
load_and_authorize_resource :venue, through: :conference, singleton: true load_and_authorize_resource :venue, through: :conference, singleton: true
load_and_authorize_resource through: :venue load_and_authorize_resource through: :venue
after_action :prepare_unobtrusive_flash, only: [:create]
def index; end def index; end
@ -14,12 +15,13 @@ module Admin
def create def create
@room = @venue.rooms.new(room_params) @room = @venue.rooms.new(room_params)
if @room.save respond_to do |format|
redirect_to admin_conference_venue_rooms_path(conference_id: @conference.short_title), if @room.save
notice: 'Room successfully created.' flash.now[:notice] = 'Room successfully created.'
else else
flash.now[:error] = "Creating Room failed: #{@room.errors.full_messages.join('. ')}." flash.now[:error] = "Creating Room failed: #{@room.errors.full_messages.join('. ')}."
render :new end
format.js
end end
end end

View file

@ -8,8 +8,8 @@
= @room.name = @room.name
.row .row
.col-md-8 .col-md-8
= semantic_form_for(@room, url: (@room.new_record? ? admin_conference_venue_rooms_path : admin_conference_venue_room_path(@conference.short_title, @room))) do |f| = semantic_form_for(@room, url: (@room.new_record? ? admin_conference_venue_rooms_path : admin_conference_venue_room_path(@conference.short_title, @room)), remote: (true if @room.new_record?)) do |f|
= f.input :name, input_html: { autofocus: true} = f.input :name, input_html: { autofocus: true}, id: 'room_name'
= f.input :size, input_html: {size: 5} = f.input :size, input_html: {size: 5}, id: 'room_size'
%p.text-right %p.text-right
= f.action :submit, as: :button, button_html: { class: 'btn btn-primary' } = f.action :submit, as: :button, button_html: { class: 'btn btn-primary' }

View file

@ -0,0 +1,2 @@
$('#room_name').val('');
$('#room_size').val('');

View file

@ -8,7 +8,7 @@
-# Index admin sidebar -# Index admin sidebar
= render 'layouts/admin_sidebar_index' = render 'layouts/admin_sidebar_index'
.col-md-10 .col-md-10
#messages #messages.unobtrusive-flash-container
=render 'layouts/messages' =render 'layouts/messages'
#content #content
= yield = yield