Skip to content

HTTPS clone URL

Subversion checkout URL

You can clone with
or
.
Download ZIP
pjax for rails and rack applications
Ruby

Fetching latest commit…

Cannot retrieve the latest commit at this time

Failed to load latest commit information.
lib
spec
.gitignore
.travis.yml
Gemfile
LICENSE
README.md
Rakefile
rack-pjax.gemspec

README.md

Rack-pjax stillmaintained travis

Rack-pjax is middleware that lets you serve 'chrome-less' pages in respond to pjax-requests.

It does this by simply filtering the generated page; only the title and inner-html of the pjax-container are sent to the client.

While this won't save you any time rendering the page, it gives you more flexibility where or how to define the pjax-container. Ryan Bates featured rack-pjax on Railscasts and explains how this gem compares to pjax_rails.

Installation

Check out the Railscast notes how to integrate rack-pjax in your Rails 3.1 application.

The more generic installation comes down to:

I. Add the gem to your Gemfile

    # Gemfile
    gem "rack-pjax"

II. Include rack-pjax as middleware to your application(-stack)

    # config.ru
    require ::File.expand_path('../config/environment',  __FILE__)
    use Rack::Pjax
    run RackApp::Application

III. Install jquery-pjax. Make sure to add the 'data-pjax-container'-attribute to the container.

    <head>
      ...
      <script src="/javascripts/jquery.js"></script>
      <script src="/javascripts/jquery.pjax.js"></script>
      <script type="text/javascript">
        $(function(){
          $('a:not([data-remote]):not([data-behavior]):not([data-skip-pjax])').pjax('[data-pjax-container]')
        })
      </script>
      ...
    </head>
    <body>
      <div data-pjax-container>
        ...
      </div>
    </body>

IV. Fire up your pushState-enabled browser and enjoy!

Requirements

  • Hpricot

Contributors

  • eval
  • matthooks
Something went wrong with that request. Please try again.