Up: Main page
Next: Part I
Simply Lift
David Pollak
September 8, 2011
Copyright © 2010-2011 by David Pollak
This document is licensed Creative Commons Attribution, Non Commercial, No Derivatives:
http://creativecommons.org/licenses/by-nc-nd/3.0/
Table of Contents
Part I: The Lift Web Framework
Chapter 1: Introduction
Chapter 2: The ubiquitous Chat app
Section 2.1: The View
Section 2.2: The Chat Comet component
Section 2.3: The
ChatServer
Section 2.4: User Input
Section 2.5: Chat In
Section 2.6: Running it
Section 2.7: What you don’t see
Chapter 3: Snippets and SiteMap
Section 3.1: Starting at the beginning:
Boot.scala
Subsection 3.1.1:
LiftRules
rules
Subsection 3.1.2: Properties and Run modes
Subsection 3.1.3: By convention
Subsection 3.1.4: Misc Rules
Subsection 3.1.5: Html5
Section 3.2:
SiteMap
Subsection 3.2.1: Defining the
SiteMap
Subsection 3.2.2: Simplest
SiteMap
Subsection 3.2.3:
Menu
and
Loc[_]
Subsection 3.2.4: Access Control
Subsection 3.2.5:
Hidden
and
Group
Subsection 3.2.6: Submenus
Subsection 3.2.7: Parameters
Subsection 3.2.8: Wildcards
Subsection 3.2.9: Summary
Section 3.3: View First
Subsection 3.3.1: Page source
Subsection 3.3.2: Dynamic content
Subsection 3.3.3: Surround and page chrome
Subsection 3.3.4: Embed
Subsection 3.3.5: Results
Section 3.4: Snippets and Dynamic content
Subsection 3.4.1: Snippets in markup
Subsection 3.4.2: Snippet resolution
Subsection 3.4.3: Dynamic Example
Subsection 3.4.4: Embedded Example
Subsection 3.4.5: Param Example
Subsection 3.4.6: Recursive
Subsection 3.4.7: Summary
Section 3.5: Wrap up
Chapter 4: Forms
Section 4.1: Old Fashioned Dumb Forms
Section 4.2: OnSubmit
Section 4.3: Stateful Snippets
Section 4.4:
RequestVar
s
Section 4.5: Field Errors
Section 4.6:
LiftScreen
Section 4.7:
Wizard
Section 4.8: Ajax
Section 4.9: But sometimes Old Fashioned is good
Section 4.10: Conclusion
Chapter 5: HTTP and REST
Section 5.1: Introduction
Section 5.2: REST the hard way
Section 5.3: Making it easier with
RestHelper
Section 5.4: A complete REST example
Section 5.5: Wrap Up
Chapter 6: Wiring
Section 6.1: Cells
Section 6.2: Hooking it up to the UI
Section 6.3: Shared Shopping
Section 6.4: Wrap up
Chapter 7: Core Concepts
Section 7.1: Snippets
Subsection 7.1.1: Snippet
NodeSeq => NodeSeq
Subsection 7.1.2: Snippet instances
Subsection 7.1.3: Multiple methods on a snippet class
Subsection 7.1.4: Inter-snippet communication
Subsection 7.1.5: Recursive Snippets
Subsection 7.1.6: Snippet parameters
Section 7.2: Box/Option
Section 7.3: S/SHtml
Section 7.4: Boot
Section 7.5: SiteMap
Section 7.6: GUIDs
Subsection 7.6.1: How GUIDs are generated
Subsection 7.6.2: Where they are used
Section 7.7: LiftRules
Section 7.8: SessionVars and RequestVars
Section 7.9: Helpers
Section 7.10: CSS Selector Transforms
Section 7.11: Client-side behavior invoking server-side functions
Section 7.12: Ajax
Section 7.13: Comet
Section 7.14: LiftActor
Section 7.15: Pattern Matching
Section 7.16: Type safety
Section 7.17: Page rewriting
Section 7.18: Security
Chapter 8: Common Patterns
Section 8.1: Localization
Subsection 8.1.1: Localizing Templates
Subsection 8.1.2: Resource Lookup
Subsection 8.1.3: Accessing Resources
Subsection 8.1.4: Conclusion
Section 8.2: Dependency Injection
Subsection 8.2.1: Lift Libraries and Injector
Subsection 8.2.2: Lift WebKit and enhanced injection scoping
Subsection 8.2.3: Conclusion
Section 8.3: Modules
Section 8.4: HtmlProperties, XHTML and HTML5
Subsection 8.4.1: XHTML via
OldHtmlProperties
Subsection 8.4.2: HTML5 via
Html5Properties
Subsection 8.4.3: Changing behavior mid-session or mid-request
Chapter 9: Built-in Snippets
Section 9.1: CSS
Section 9.2: Msgs
Section 9.3: Msg
Section 9.4: Menu
Section 9.5: A
Section 9.6: Children
Section 9.7: Comet
Section 9.8: Form
Section 9.9: Ignore
Section 9.10: Loc
Section 9.11: Surround
Section 9.12: TestCond
Section 9.13: Embed
Section 9.14: Tail
Section 9.15: WithParam
Section 9.16: VersionInfo
Section 9.17: SkipDocType
Section 9.18: XmlGroup
Section 9.19: LazyLoad
Section 9.20: WithResourceId
Chapter 10: SiteMap
Chapter 11: REST
Chapter 12: MVC (If you really want it)
Chapter 13: From MVC
Section 13.1: First things first
Section 13.2: Making a
SiteMap
entry
Section 13.3: Creating the view
Section 13.4: Creating the Snippet
Section 13.5: Getting Ajaxy
Section 13.6: Next Steps
Part II: Recipes
Chapter 14: Dynamic html tables created from
DB.runQuery()
Section 14.1: Problem
Section 14.2: Solution
Chapter 15: Dynamically choosing content
Section 15.1: Problem
Section 15.2: Solution
Chapter 16: Ajax Forms
Chapter 17: Protecting REST APIs
Section 17.1: Problem
Section 17.2: Solution
Chapter 18: URI-based locale selection
Section 18.1: Problem
Section 18.2: Solution
Chapter 19: Embedding JavaScript in an HTML page
Section 19.1: Problem
Section 19.2: Solution
Part III: Questions and Answers
Chapter 20: Scaling
Chapter 21: How Lift does function/GUID mapping
Chapter 22: How Lift does Comet
Chapter 23: Advanced Concepts
Section 23.1: Snippet Resolution
Subsection 23.1.1:
LiftSession.liftTagProcessing
Subsection 23.1.2:
LiftRules.liftTagProcessing
Subsection 23.1.3: Snippet name resolution
Subsection 23.1.4: Post-processing of results
Section 23.2: The Merging Phase
Part IV: Misc
Chapter 24: Releases
Section 24.1: Lift 2.2-RC1
Subsection: Lift features include:
Subsection: Lift 2.2-RC1 improvements include:
Subsection: Lift-powered sites include:
Section 24.2: Lift 2.2
Subsection: Lift features include:
Subsection: Lift 2.2 improvements include:
Subsection: Lift-powered sites include:
Index
List of Figures
Up: Main page
Next: Part I
(C) 2012 David Pollak