ajax

Ajax based online ruby API documentation

http://www.rubybrain.com/

Ajax based drag drop and sortable tree for Rails

My friend sur wrote and shares his code for Ajax based drag drop sortable tree for rails. He is also trying to pluginize this, and soon it will be publicly available. Find more detail here.

Uploading files using AJAX

There is no way to upload files using AJAX. How Gmail does it then? Well, the answer is using <iframe>. Here is a post that describe this technique in detail. Infact we are using this technique from months, obviously inspired by Gmail. ;-)

update: Technically speaking, it’s not Ajax. Just an iframe hack. You are absolutly right Pratik.

Ajax pagination links: Create pagination links with link_to_remote

Here is a method by mixonix to create pagination links by link_to_remote. Copy this code in your helpers/application_helper.rb

def ajax_pagination_links(paginator, options={})
options.merge!(ActionView::Helpers::PaginationHelper::DEFAULT_OPTIONS) {|key, old, new| old}
window_pages = paginator.current.window(options[:window_size]).pages
return if window_pages.length <= 1 unless
options[:link_to_current_page]

first, last = paginator.first, paginator.last

returning html = '' do
if options[:always_show_anchors] and not window_pages[0].first?
html << link_to_remote(first.number, :update => options[:update], :url => { options[:name] => first }.update(options[:params] ))
html << ' ... ' if window_pages[0].number - first.number > 1
html << ' '
end

window_pages.each do |page|
if paginator.current == page && !options[:link_to_current_page]
html << page.number.to_s
else
html << link_to_remote(page.number, :update => options[:update], :url => { options[:name] => page }.update(options[:params] ))
end
html << ' '
end

if options[:always_show_anchors] && !window_pages.last.last?
html << ' ... ' if last.number - window_pages[-1].number > 1
html << link_to_remote(paginator.last.number, :update => options[:update], :url => { options[:name] => last }.update( options[:params]))
end
end
end and use following code for creating links

<%= ajax_pagination_links @pages, {:params => {:search_query => @params[:search_query]} } %>

Ajax Scaffold Generator

I was searching for something about rails and find a very interesting thing. The Ajax Scaffold Generator.
The ajax scaffold generator is just too simple!.
One thing you must remember if using this ajax scaffold generator is that the browser back buttn might not work. I liked it very much and highly recomend this tool.

you can install this by issuing the following:
gem install ajax_scaffold

If you are interested in learning RJS template then you must go through its code in lib dirctory.
Find RJS template book here http://www.oreilly.com/catalog/rjsrails/