{ "info": { "author": "Rocky Burt", "author_email": "rocky@serverzen.com", "bugtrack_url": null, "classifiers": [ "Intended Audience :: Developers", "License :: OSI Approved :: BSD License", "Programming Language :: Python", "Topic :: Internet :: WWW/HTTP :: WSGI" ], "description": ".. -*-rst-*-\n\nIntroduction\n============\n\nkhufu_opinion_ is a set of paster templates for rapid Pyramid development. It\nmakes several framework choices for the developer which are:\n\n * Pyramid_ for the underlying web framework\n\n - traversal based url routing\n\n * Jinja2_ for the page template language (similar to Django templates)\n\n * SQLAlchemy_ for ORM-based relational database persistence\n\n\nImportant URL's\n---------------\n\n * Source Control - https://github.com/serverzen/khufu_opinion\n\n * PyPi Entry - http://pypi.python.org/pypi/khufu_opinion\n\nSetting up a New Project\n========================\n\nInstall khufu_opinion into a Python environment (ie virtualenv_) with a working\nPaster. Once this has been done, you can create a new khufu_opinion project\nby simply running (where *Something* is the name of your new egg)::\n\n paster create -t khufu_starter Something\n\nOnce the template egg has been created you should set it up in develop\nmode to start working on your project.\n::\n\n cd Something\n python setup.py develop\n\nUsing the New Project\n=====================\n\nCommand Runner\n--------------\n\nBy default a new script named ``something-manage`` will be created in the ``bin``\ndirectory of your python envionment. This script is a command\nrunner that provides the following::\n\n Commands:\n runserver Run a reloadable development web server.\n loaddata Add data based on the YAML from filename\n shell Launch a Python shell\n syncdb Ensure all database tables exist\n\nPaster\n------\n\nA ``development.ini`` file will be created inside the *Something*\ndirectory. This can be used with the standard ``paster`` commands::\n\n # use builtin paster http server\n paster serve development.ini\n\nDeployment with Apache+mod_wsgi\n-------------------------------\n\nThere is a preconfigured ``Something.wsgi`` file generated which\nis necessary for plugging your app into a mod_wsgi environment.\n\nA simple apache virtualhost entry will look like this::\n\n \n ServerName www.something.com\n \n WSGIScriptAlias / /path/to/Something.wsgi\n \n\n\nDeveloping With the New Project\n===============================\n\nBase Framework\n--------------\n\nkhufu_opinion is based on the Pyramid_ web application\nframework. As such, the Pyramid_ api will always be\nthe go-to api for working with the web application. Please\nsee the `Pyramid docs`_ for further details.\n\nTemplating\n----------\n\nAny file ending with the ``.jinja2`` extension located inside\nthe ``Something/something/templates`` directory will be rendered using\nthe Jinja2_ templating system. This template language is\nbased on the Django templating language.\n\nkhufu_opinion produces two template files by default, one containing\nthe overall layout called, ``layout.jinja2`` and one for the default main\npage called, ``main.jinja2``.\n\nData Access\n-----------\n\nAll data access is handled by the SQLAlchemy_ ORM_ framework which wraps\nrelational databases. Out of the box, any new project created by khufu_opinion\nwill have a SQLAlchemy_ database session factory setup.\n\nkhufu_opinion puts the orm model classes inside the ``models.py`` Python\nfile. The active database session can always be retrieved as the ``db``\nattribute on the ``request`` object.\n\nTransaction Support\n-------------------\n\nTransactions are used to ensure all or nothing is performed. With the\nvery useful `pyramid_tm`, `repoze.tm2`_, and transaction_ packages this can\nbe accomplished easily in Pyramid_ applications.\n\nkhufu_opinion ensures all requests join a new transaction so that if\nany error/exception occurs, the transaction is automatically\nrolled back. Any db sessions created via the provided session\nfactory automatically join this transaction and will be rolled back\nin the event an error occurs.\n\nTraversal\n---------\n\nThe Pyramid_ web application framework provides a convenient mechanism\nto traverse an object graph and map that graph to url's. khufu_opinion stores\nit's traversal mechanism inside of the ``resources.py`` file.\n\nCredits\n=======\n\n * Created and maintained by Rocky Burt (rocky AT serverzen DOT com)\n\n.. _Jinja2: http://jinja.pocoo.org/\n.. _Pyramid: http://docs.pylonshq.com/\n.. _`Pyramid Docs`: http://docs.pylonshq.com/pyramid/dev/\n.. _SQLAlchemy: http://www.sqlalchemy.org/\n.. _orm: http://en.wikipedia.org/wiki/Object-relational_mapping\n.. _virtualenv: http://pypi.python.org/pypi/virtualenv\n.. _transaction: http://pypi.python.org/pypi/transaction\n.. _`repoze.tm2`: http://pypi.python.org/pypi/repoze.tm2\n.. _`clue_script`: http://pypi.python.org/pypi/clue_script\n.. _khufu_opinion: http://pypi.python.org/pypi/khufu_opinion\n\n\nChanges\n=======\n\n0.5 - May 14, 2011\n------------------\n\n * Now uses khufu_script\n\n * ``traversals`` module is now ``resources``\n\n0.2.2 - Feb 20, 2011\n--------------------\n\n * Renamed from RapidGiza to khufu_opinion\n\n0.2.1 - Feb 16, 2011\n--------------------\n\n * Updated url's to point to github repo\n\n\n0.2 - Feb 5, 2011\n-----------------\n\n * switched from Werkzeug to Khufu-Script\n\n * now using Khufu-SQLAHelper\n \n\n0.1.4 - Dec 1, 2010\n-------------------\n\n * yet another missing file (won't happen again)\n\n0.1.3 - Nov 30, 2010\n--------------------\n\n * Added yet another missing file to MANIFEST.in\n\n0.1.2 - Nov 29, 2010\n--------------------\n\n * Changed ``make_app()`` signature\n\n * Added development.ini for out-of-the-box use with Paster serve\n\n * Generated projects now include two Paster apps\n\n 1. <>:app - Web app with included middleware\n\n 2. <>:pyramid-app - Web app without middleware \n\n0.1.1 - Nov 29, 2010\n--------------------\n\n * Fixed MANIFEST.in so sdist contains appropriate files\n\n0.1 - Nov 29, 2010\n------------------\n\n * Initial version", "description_content_type": null, "docs_url": null, "download_url": "UNKNOWN", "downloads": { "last_day": -1, "last_month": -1, "last_week": -1 }, "home_page": "https://github.com/khufuproject/khufu_opinion", "keywords": "wsgi pylons pyramid sqlalchemy khufu jinja2", "license": "BSD", "maintainer": null, "maintainer_email": null, "name": "khufu_opinion", "package_url": "https://pypi.org/project/khufu_opinion/", "platform": "UNKNOWN", "project_url": "https://pypi.org/project/khufu_opinion/", "project_urls": { "Download": "UNKNOWN", "Homepage": "https://github.com/khufuproject/khufu_opinion" }, "release_url": "https://pypi.org/project/khufu_opinion/0.5/", "requires_dist": null, "requires_python": null, "summary": "Set of paster templates for rapid Pyramid development", "version": "0.5" }, "last_serial": 793936, "releases": { "0.2.2": [ { "comment_text": "", "digests": { "md5": "a76dbe64b42dd26b68a6ec40a6617d5c", "sha256": "d837841ebcbe14a71b8a9bce0dcdacda7825e0a4f9954d54dd77c86915013dbc" }, "downloads": -1, "filename": "khufu_opinion-0.2.2.tar.gz", "has_sig": false, "md5_digest": "a76dbe64b42dd26b68a6ec40a6617d5c", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 56540, "upload_time": "2011-02-21T01:32:42", "url": "https://files.pythonhosted.org/packages/1e/be/4e8c18b799fa4955fd8febd21e52255a702aeae955283464339f9ce4c834/khufu_opinion-0.2.2.tar.gz" } ], "0.5": [ { "comment_text": "", "digests": { "md5": "7c593efd6da3b322f7045739f95c63a5", "sha256": "3531da6c52ed37109414f16a279da5e8ba8d384e1a63ca028e331a59825ead4d" }, "downloads": -1, "filename": "khufu_opinion-0.5.tar.gz", "has_sig": false, "md5_digest": "7c593efd6da3b322f7045739f95c63a5", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 54075, "upload_time": "2011-05-19T18:48:53", "url": "https://files.pythonhosted.org/packages/9b/f1/da147250fcf1288fea37155266a50d8a46127e7837297e3bacb480b08a14/khufu_opinion-0.5.tar.gz" } ] }, "urls": [ { "comment_text": "", "digests": { "md5": "7c593efd6da3b322f7045739f95c63a5", "sha256": "3531da6c52ed37109414f16a279da5e8ba8d384e1a63ca028e331a59825ead4d" }, "downloads": -1, "filename": "khufu_opinion-0.5.tar.gz", "has_sig": false, "md5_digest": "7c593efd6da3b322f7045739f95c63a5", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 54075, "upload_time": "2011-05-19T18:48:53", "url": "https://files.pythonhosted.org/packages/9b/f1/da147250fcf1288fea37155266a50d8a46127e7837297e3bacb480b08a14/khufu_opinion-0.5.tar.gz" } ] }