Metadata-Version: 2.0
Name: Simpycity
Version: 2.0.1
Summary: A database-respecting object-relational mapper for PostgreSQL.
Home-page: https://github.com/commandprompt/Simpycity
Author: Command Prompt, Inc.
Author-email: support@commandprompt.com
License: LGPL
Download-URL: https://github.com/commandprompt/Simpycity/releases/tag/2.0.1
Keywords: orm postgresql
Platform: UNKNOWN
Classifier: Development Status :: 5 - Production/Stable
Classifier: Intended Audience :: Developers
Classifier: License :: OSI Approved :: GNU Library or Lesser General Public License (LGPL)
Classifier: Operating System :: OS Independent
Classifier: Topic :: Software Development :: Libraries :: Python Modules
Classifier: Topic :: Database
Classifier: Programming Language :: Python :: 2
Classifier: Programming Language :: Python :: 2.7
Classifier: Programming Language :: Python :: 3
Classifier: Programming Language :: Python :: 3.3
Classifier: Programming Language :: Python :: 3.4
Classifier: Programming Language :: Python :: 3.5
Classifier: Natural Language :: English
Requires-Dist: future
Requires-Dist: psycopg2 (>=2.5)

README File for Simpycity
=========================

What Simpycity Is
-----------------

Simpycity is an object-relational mapper. It seamlessly maps PostgreSQL query 
and function result sets to Python classes and class attributes.

It allows for the easy and rapid development of query- and
stored procedure-based data representations. Simpycity leverages PostgreSQL's
powerful composite type system, and the advanced type handling of the psycopg2
database access library.

What Simpycity is Not
---------------------

Simpycity is not a SQL generator and does not attempt to abstract or hide SQL. 
Simpycity is designed for developers who deeply understand SQL and
desire to write the best possible SQL representations for their database. 
Simpycity also rejects the Active Record and Data Mapper paradigms, whose 
simplistic patterns fail in even moderately complex systems.

Core Philosophy
---------------

The core philosophy behind Simpycity is that the Database and the Application
are separate entities, each with distinct abilities and design
representations; this echoes the classic Object versus Relation argument.
It provides a mechanism where a single business Object can easily represent
several Relations, and allow the base Relational layer to follow normal forms
without compromising or complicating application design.

Usage
-----

At its simplest, object-relation mapping looks like::

    --SQL
    create table foo (id int, name text);
    insert into foo (id, name) values (1, 'one'), (2, 'two');

    #Python
    class Foo(simpycity.model.SimpleModel):
        pg_type = ('public', 'foo')
        __load__ = simpycity.core.QuerySingle('foo',['id'])

    my_foo = Foo(1)
    print(my_foo.name)
    >>>one

Read the tutorial_ for more narrative help.

License
-------

Simpycity is licensed under the LGPL license, and a copy of your rights and
permissions is available in the LICENSE file included in your distribution.

Contact
-------

The official source repository is https://github.com/commandprompt/Simpycity

For support, questions, and additional help with Simpycity, please feel free
to contact us on github.

.. _tutorial: tutorial.html


