skip to navigation
skip to content

Not Logged In

tgcrud 1.0

Genrate CRUD interface in TurboGears

Latest Version: 1.0.2

tgcrud is an TurboGears command extension, which could generate a sqlobject/sqlalchemy backend editor/crud (create, read, update, delete) interface based on your Model with kid template. It could be plugged into any projects even if you don't use kid template.

The generated codes are fully customizable. tgcrud heavily use form widgets and show you many TG 1.0 features in it's controllers/templates.

Please refer to http://docs.turbogears.org/1.0/CRUDTemplate for detail

The command follow the TurboGears quickstart template style, you could easily add identity, form validation, paginate in your crud interface.

If you are a TG beginer, tgcrud help you create a general admin skeleton based on your model.

If you are an experienced TG developer, you could get it in minutes since it just done the basic procedure that every time you write a management interface of your model.

Install

The 'tgcrud' command extension is available in Python CheeseShop and TurboGears svn.

You can use setuptools to install tgcrud with following command:

$ easy_install tgcrud

or download the source code and install tgcrud manually.

Usage

  1. Define your model in model.py

  2. Once you've defined your model, you could use "tg-admin crud" command to generate the crud pack. The syntax is:

    $ tg-admin crud [model class name] [package name]
    

    e.x if the model name is BookMark, and the package name we want is BookMarkController, the command is:

    $ tg-admin crud BookMark BookMarkController
    

    Then the 'admin' package is generated.

    You just need take several minutes to customize the formfield to have a proper crud interface.

    ..note:: you could estimate the result by passing "--dry-run" to the command, such as:

        $ tg-admin crud BookMark BookMarkController --dry-run
    
    With this argument the command will not effect your physical directories.
    
  3. Import the package to your controllers.py with a line:

    from BookMarkController import BookMarkController

    and add a branch on your Root():

    foo = BookMarkController()
    
  4. Customize the form filed in admin/controllers.py

  5. Open the http://localhost:8080/foo to use the customizable interface.

Please check http://docs.turbogears.org/1.0/CRUDTemplate for detail instructions.

Screencast

Yes, there's a 'Make a Book Site with TurboGears' screencast with tgcrud.

If you are an experienced TG developer, you could skip to the third.

If you are new to TG, you may want to watch all of them to get familiar with TurboGears.

With tgcrud you could easily generate a Rails scaffold style CRUD interface. The difference is all code in tgcrud is implicit, which leads to more easy customization.

ChangeLog

1.0
  • Fully SQLAlchemy support with
    • SQLObject/SQLAlchemy auto detection
    • Able to specify the primary id
  • Minor template updates

File Type Py Version Size # downloads
tgcrud-1.0-py2.4.egg (md5) Python Egg 2.4 22KB 422
tgcrud-1.0-py2.5.egg (md5) Python Egg 2.5 20KB 751
tgcrud-1.0.zip (md5) Source 22KB 89