CherryPy Essentials: Rapid Python Web Application Development Table of Contents

Back to BOOK PAGE

Table of Contents

Preface
Chapter 1: Introduction to CherryPy
Chapter 2: Download and Install CherryPy
Chapter 3: Overview of CherryPy
Chapter 4: CherryPy in Depth
Chapter 5: A Photoblog Application
Chapter 6: Web Services
Chapter 7: The Presentation Layer
Chapter 8: Ajax
Chapter 9: Testing
Chapter 10: Deployment
Index

  • Chapter 2: Download and Install CherryPy
    • Requirements
    • Overview
    • Installation from a Tarball
    • Installation through Easy Install
    • Installation from Subversion
    • Testing your Installation
    • Keeping CherryPy Up to Date
    • Summary
  • Chapter 3: Overview of CherryPy
    • Vocabulary
    • Basic Example
    • Built-In HTTP Server
    • Internal Engine
    • Configuration
    • Object Publisher Engine
    • Library
      • The Autoreload Feature
      • The Caching Module
      • The Coverage Module
      • The Encoding/Decoding Module
      • The HTTP Module
      • The Httpauth Module
      • The Profiler Module
      • The Sessions Module
      • The Static Module
      • The Tidy Module
      • The Wsgiapp Module
      • The XML-RPC Module
    • Tools
    • Error and Exception Handling
    • Summary
  • Chapter 4: CherryPy in Depth
    • HTTP Compliance
    • Multiple HTTP Servers
    • Multi-Threaded Application Server
    • URI Dispatching
      • HTTP Method Dispatcher
      • Routes Dispatcher
      • Virtual Host Dispatcher
    • Hook into CherryPy's Core Engine
    • CherryPy Toolbox
      • Basic Authentication Tool
      • Caching Tool
      • Decoding Tool
      • Digest Authentication Tool
      • Encode Tool
      • Error Redirect Tool
      • Etag Tool
      • Gzip Tool
      • Ignore Headers Tool
      • Log Headers Tool
      • Log Tracebacks Tool
      • Proxy Tool
      • Referer Tool
      • Response Headers Tool
      • Trailing Slash Tool
      • XML-RPC Tool
      • Toolbox
      • Creating a Tool
    • Static Resource Serving
      • Using the Staticfile Tool to Serve a Single File
      • Using the Staticdir Tool to Serve a Complete Directory
      • Bypassing Static Tools to Serve Static Content
    • WSGI Support
      • Hosting a WSGI Application within the CherryPy WSGI Server
      • Hosting a CherryPy WSGI Application within a Third-Party WSGI Server
    • Summary
  • Chapter 5: A Photoblog Application
    • A Photoblog Application
    • Photoblog Entities
    • Vocabulary
    • DBMSes Overview
      • Relational Database Management System (RDBMS)
      • Object-Oriented Database Management System (OODBMS)
      • XML Database Management System (XMLDBMS)
    • Object-Relational Mapping
      • Python Object-Relational Mappers
    • Photoblog Application Entity Modeling
      • Mapping Entities
      • Units and UnitProperties
      • Associating Units
      • The Sandbox Interface
    • Querying Units
    • Extending the Data Access Layer
    • Summary
  • Chapter 6: Web Services
    • Traditional Web Development
      • Separation of Concerns
    • REST
    • Uniform Resource Identifier
    • HTTP Methods
    • Putting it Together
    • REST Interface through CherryPy
    • Atom Publishing Protocol
    • Atom XML-Document Format
    • APP Implementation
    • Summary
  • Chapter 7: The Presentation Layer
    • HTML
    • XML
    • XHTML
    • CSS
    • DHTML
    • Templating
    • Kid—The Templating Engine
      • Overview
      • Kid's Attributes
        • XML-Based Templating Language
        • Variable Substitution
        • Conditional Statement
        • Looping Mechanism
        • Extensibility
        • Other Attributes
    • Photoblog Design Preparation
      • Targetting the User Agent
      • Tools
      • Global Design Goals
      • Design Directory Layout
      • CherryPy—Encapsulating the Template Rendering Process
    • Photoblog Design in Detail
      • Basic Structure
    • Mochikit
    • Developing the Photoblog Design
      • HTML Code
      • Adding a Link
      • Handling the End-User Actions
      • Amending the Template
      • Amending the CSS
      • Let's be More Flexible...
    • Summary
  • Chapter 8: Ajax
    • Rise of the Rich-Client Applications
    • Ajax
      • Ajax—Advantages and Drawbacks
      • Behind the Scene: XMLHttpRequest
        • Performing a GET Request
        • Performing a Content-Negotiated GET Request
        • Performing a POST Request
        • Performing PUT, HEAD, or DELETE Requests
        • Cookies
        • Authentication using Digest or Basic Schemes
    • JSON
    • Applying Ajax to our Application
      • Defining the Required Namespaces
      • Implementing Namespaces
      • Adding Methods to the Classes
      • Method to Create a New Album
      • Method to Update an Existing Album
      • Method to Delete an Existing Album
    • Summary
  • Chapter 9: Testing
    • Why Testing
    • Planning a Test
    • Common Testing Approach
    • Unit Testing
      • unittest
      • doctest
    • Unit Testing Web Applications
    • Performance and Load Testing
    • Functional Testing
      • Application under Test
        • Selenium Core
        • Selenium IDE
        • Selenium Remote Control
    • Summary
  • Chapter 10: Deployment
    • Configuration
      • CherryPy—Web and Engine Configuration System
      • Photoblog Application Configuration System
    • Deployment
      • Apache with mod_rewrite Module
      • Lighttpd with mod_proxy Module
      • Apache with mod_python Module
      • mod_python with WSGI Application
    • SSL
      • Creating a Certificate and a Private Key
        • Using the CherryPy SSL Support
        • Using the lighttpd SSL Support
        • Using the Apache mod_ssl Support
    • Summary

Back to BOOK PAGE

Awards Voting Nominations Previous Winners
Judges Open Source CMS Hall Of Fame CMS Most Promising Open Source Project Open Source E-Commerce Applications Open Source JavaScript Library Open Source Graphics Software
Resources
Open Source CMS Hall Of Fame CMS Most Promising Open Source Project Open Source E-Commerce Applications Open Source JavaScript Library Open Source Graphics Software
Sort A-Z