Skip to content

Commit 126d874

Browse files
committed
Merge pull request realpython#500 from wonderb0lt/more-orms-in-database-section
Added peewee, PonyORM and SQLObject to the databases section
2 parents 3c56e57 + 2408d90 commit 126d874

File tree

1 file changed

+28
-0
lines changed

1 file changed

+28
-0
lines changed

docs/scenarios/db.rst

Lines changed: 28 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -38,3 +38,31 @@ The basics:
3838
- Each model is a Python class that subclasses django.db.models.Model.
3939
- Each attribute of the model represents a database field.
4040
- Django gives you an automatically-generated database-access API; see `Making queries <https://docs.djangoproject.com/en/dev/topics/db/queries/>`__.
41+
42+
peewee
43+
------
44+
45+
`peewee <http://docs.peewee-orm.com/en/latest/>`_ is another ORM with a focus on being lightweight with support for
46+
Python 2.6+ and 3.2+ which supports SQLite, MySQL and Postgres by default. The `model layer <https://peewee.readthedocs.org/en/latest/peewee/quickstart.html#model-definition>`_
47+
is similar to that of the Django ORM and it has `SQL-like methods <https://peewee.readthedocs.org/en/latest/peewee/quickstart.html#retrieving-data>`_
48+
to query data. While SQLite, MySQL and Postgres are supported out-of-the-box, there is a `collection of add-ons <https://peewee.readthedocs.org/en/latest/peewee/playhouse.html#playhouse>`_
49+
available.
50+
51+
PonyORM
52+
-------
53+
54+
`PonyORM <http://ponyorm.com/>`_ is an ORM that takes a different approach to querying the database. Instead of writing
55+
an SQL-like language or boolean expressions, Python's generator syntax is used. There's also an graphical schema editor
56+
that can generate PonyORM entities for you. It supports Python 2.6+ and Python 3.3+ and can connect to SQLite, MySQL,
57+
Postgres & Oracle
58+
59+
60+
61+
SQLObject
62+
---------
63+
64+
`SQLObject <http://www.sqlobject.org/>`_ is yet another ORM. It supports a wide variety of databases: Common database systems
65+
MySQL, Postgres and SQLite and more exotic systems like SAP DB, SyBase and MSSQL. It only supports Python 2 from
66+
Python 2.6 upwards.
67+
68+
.. There's no official information on this on their page, this information was gathered by looking at their source code

0 commit comments

Comments
 (0)