Skip to content

josewails/haystack-static-pages

 
 

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

25 Commits
 
 
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

haystack_static_pages

Haystack Static Pages is an extension library for Haystack. Currently, it adds the ability to index static pages through the use of a settings.py variable and command extension.

I forked trapeze/haystack-static-pages to make it compatible with Django 1.10 + Haystack 2.5.

Basic Usage:

  1. Setup and install Haystack.

  2. Add haystack_static_pages to your INSTALLED_APPS in settings.py

  3. Add HAYSTACK_STATIC_PAGES to your settings.py.

    eg.

    HAYSTACK_STATIC_PAGES = (
        'static-about_us',                        # A named url
        'static-help',                            # Another named url
        'http://www.example.com/some_page.html',  # An fully qualified url
    )
    
  4. ./manage.py migrate to create the necessary tables.

  5. ./manage.py crawl_static_pages to populate the database with the static page content. This is needed for Haystack to properly map the urls to the content. Output should indicate which pages were crawled and where, as well as the total number of pages found. Crawled pages must be accessible through an http connection. ie., they must be viewable in a browser.

  6. ./manage.py rebuild_index to create the search indexes used by Haystack. You should see a note about how many static pages were indexed. The number of static pages indexed should match the number of static pages created in the step above.

Login:

This version supports login to scrap pages accesible only for logged in users. Only add:

HAYSTACK_STATIC_LOGIN_AUTH = {
'email': '[email protected]', 'password': '****',

}

[TEMP. UNAVAILABLE] Advanced Usage:

There are currently two command line options that can be used with the crawl_static_pages command:

-l LANG, --language=LANG
 This allows the user to specify the desired language for indexing content. Each page will include a language attribute that will correspond to the page's language as detected in the html lang attribute or 'en' if unable to be determined.
-p PORT, --port=PORT
 This allows the user to include the port number to crawl, if required.

About

Static pages for Haystack

Resources

License

Stars

Watchers

Forks

Packages

No packages published

Languages

  • Python 100.0%