Skip to main content

Implement Modal in rails

Sometimes we need to show a modal window that comes flying on the website which really feels good as we do not have to load a new page.The reason why i love using modals is that you can show two things at the same time.For example:-Suppose user registers and logs in to your website,then immediately after a matter of seconds,you can show a modal to show/edit his profile OR add some more info about himself or similar stuff and all the user can do is just click button to continue/reject without changing the previous screen.Trust me...it feels good.see the example1,example2
   Similarly if You talk in context of Rails,If the user is in index page,you can render the show action in the Modal,Wowwww...so user can either see the stuff he clicked on index page or cancel the modal,thereby reducing your effort to reload or write extra code for index->show and again show->index.Enough of lectures...lets start the main stuff
To add MODAL to your application just follow two steps expecting that your are using CSS Framework such as Boostrap,Zurb:-

  1. Add modal to your layout (application.html.erb)
  2. Call your modal using   $('#myModal').modal();
  3. Render partial inside modal body using js.erb(ajax call)
this is all you need to do.Lets see the code:-

==============application.html.erb
<!-- add modal view partial -->
<%= render(:partial => 'shared/main_layout_dialog_modal') %>

===========app./views/shared/_main_layout_dialog_modal.html.erb


 ======================index.html.erb

  <!-- add remote true to each show link on index page -->
 <%= link_to(u.name,users_path(user.id),:remote=&gt;true)%>



=================- _show.html.erb

html/erb code for show comes here


=====================show.js.erb
  $('#myModal').modal();
  $('#myModal').find('.modal-body').html("<%= escape_javascript(render(:partial => 'users/show')) %>");
================================================================= 


So every click on index page will show a modal with _show.html.erb rendered inside the modal-body

 
 


Comments

Popular posts from this blog

Adding Emoji icons to Rails application

Its very easy to add emoji icons/images to your rails application. It seems complex but its all easy using javascript.The steps can be simplified as shown below:- add the javascript(download jemotion ) include it in your view file(where you want :) to be shown as this -----------------------> thats it....done first you need to add this wonderful js which works really great and nice from home page . We are interested in only the js and emotions folder(containing the smileys/GIF images). once you download just include it in your view file and copy/dump the emotions folder(containing images) to app/assets/images for RAILS 3+. as i did where i want the users to view their comments after they submit their comment. You also need to give a unique id to make  the js understand where it needs to convert your symbols to icons.see below code and hope you will understand how to use it. Keep in mind two thing:- dont forget t...

Convert videos using ffmpeg by ffmpeg_paperclip-Rails

Recently i implemented video uploads at S3 using ffmpeg-paperclip and ffmpeg where my uploaded videos get converted into mp4,webm and ogg(most required formats) along with 2 screenshots(with diff sizes) and stored at S3. its so wonderful in many ways:- your uploaded videos get converted into required formats(compatible on all browsers) before saving using ffmpeg through ffmpeg-paperclip moreover,you will also get screenshot(2 different images)of every video uploaded + AMAZON S3( you can even store locally,refer Paperclip ) if you want the background job to process video conversion then,use delayed_paperclip  i will show you how you can convert your uploaded videos into required formats and why we need to convert ....well refer  this .Before starting make sure that you have ffpmeg installed with all libraries needed,so click the above link instead of searching for how to install ffmpeg and install it( will take around 30mins.but its worthy ). Here i am using medi...

Configure amazon s3 with your rails app in just 5 mins

if you are looking to make use of your uploads using paperclip on AMAZON S3,then this is something that will help you. i tried the same and wasted 5 days but its very easy by using ONLY aws-sdk gem and you can start uploading to S3.  Before starting i assume few thing from you: You have a running rails app ready. You have an active AMAZON S3 account (get the credentials,you will need it now) You are using paperclip 3.5.1 (i prefer) You uploads are saving to your system locally short preview of the sequence you need to understand: START -> get aws-sdk gem -> create new s3.yml -> configure an initializer-paperclip.rb using AMAZON S3 credentials ----END----------THAT'S IT lets get started: Install 'aws-sdk' gem by including in gemfile and running bundle install. Gemfile: gem 'paperclip' , '3.5.1' gem "aws-sdk"   Create new yml file such as config/s3.yml and store your AMAZON S3 credentials as shown below...