Community Documentation
Feed providing changes to the Grok community documentation
- How to get started with Dolmen
- Dolmen is set of libraries to create a CMS. You will learn how to get started with Dolmen.
- Install Grok on MS Windows
- This HowTo gives instructions for installing Grok on the various flavours of MS Windows. Please note that this HowTo is a _WORK IN PROGRESS_ during the alpha releases of Grok version 1.0 and grokproject version 1.0. TBD denotes To Be Discussed/Determined/Developed/Described/Done
- Using Virtualenv for a clean Grok installation
- NOTE: As of Grok 1.2, you do not need to use virtualenv. Grok is automatically isolated from the system python environment.
- Setting Up The Environment
- Configuring the project environment, understanding where files are located, and how to run application and test code.
- Searching Objects
- Indexing the contents of your objects allow you to perform fast complex search operations.
- Basic ORM with megrok.rdb and SQLAlchemy
- This how-to describes the basics of connecting to and mapping relational data to python classes via the Object Relational Mapper(ORM) SQLAlchemy using megrok.rdb. It will discuss the process of mapping existing views and tables as well as dynamic creation of new tables.
- Eggs, Known Good Sets and developing with unreleased Grok source code
- Grok releases are distributed as Python eggs. This gives you the flexibility to easily control what versions of each of the individual python packages that are used to make up a Grok application. Learn why this is a desirable goal, and how you can use this to develop your Grok application based on unreleased versions of Grok checked out from subversion.
- Using a relationfield to express relationships between objects
- In this How To you will learn how to create relations between objects both directly and transparently for the user by using the z3c.relationfield and z3c.relationfieldui packages, which are based on the zc.relation package
- Initial Tests and Model Objects
- Begin transcribing the application requirements into tests and perform the first coding cycle to satisfy the tests. This is the first exposure to working with model objects and unit testing.
- Introduction
- An overview of the example requirements and a road map for how the tutorial will cover the development of the application.
- Attaching Files to a Song
- Enable users to upload sheet music and other documents related to a song in the set list.
- Adding Comments to a Performance
- We will now provide a general commenting feature for a performance.
- Adding Performances
- Create a basic content object which describes a Performance. Also, create a page template and the necessary view code so that a new performance can be added using a web browser.
- Introduction
- Grok and WSGI
- Setting up a clean Linux server
- When starting with a new server, it's important to get all required packages in place before beginning.
- Install multiple Grok apps using zc.buildout
- Grok is packaged as Python eggs. zc.buildout is a tool for managing these eggs, and let's you quickly try out or develop a Grok-based project.
- Releasing software
- Steps to take when releasing software.
- Legal stuff
- About license files, source headers, fair use and friends
- Setting up the basics
- Adding the requirements and setting up a basic layout
- Using YUI on Grok
- In this tutorial you'll be learning how to use the Yahoo! User Interface Library, or YUI in short in your Grok project. YUI is a JavaScript and CSS library providing all sorts of handy components that you can use to make you site work an look better without too much effort, and in a cross-browser compatible way. In the process, you'll also be learning some basic uses of megrok.layout, megrok.navigation and JSON.
- Adding a YUI menu
- We'll first define a menu using megrok.navigation, and then override the default template to make it YUI compatible. Then call some YUI js code to make it work.
- JSON meets the Panel
- Finally, we'll see how to use JSON for data interchange in Grok. We'll also see how to use a YUI Panel in the process.
- Return to sender
- All we've done now is requesting data from the server. How about sending some to the server? We'll add an edit tab with a form that posts the data without reloading the entire page.
- Introducing AJAX
- Up until now we haven't done anything AJAXy, however. We've used some JavaScript to make the page look a bit more dynamic, but that's about it.
- Conclusion
- What have we learned?