Облегченная оболочка базы данных Python для SQLite - PullRequest
30 голосов
/ 27 января 2012

Есть ли в Python облегченная оболочка базы данных, которую я могу использовать для SQLite. Я хотел бы что-то вроде ORM Django, но я могу просто указать на файл базы данных, и он создаст для меня необходимый API (т.е. обработать все CRUD).

Ответы [ 6 ]

46 голосов
/ 27 января 2012

Да, SQLAlchemy великолепен, но есть и другие варианты.Одним из них является Peewee.Очень легкий и идеально подходит для того, что вы ищете.

https://github.com/coleifer/peewee

12 голосов
/ 27 января 2012

SQLAlchemy может быть то, что вы ищете.

http://www.sqlalchemy.org/

8 голосов
/ 27 января 2012
3 голосов
/ 09 августа 2014

Определенно peewee .Я пробовал sqlalchemy, но это беспорядок и нет магии.

Другие ORM более не развиты или не так хороши, как SQLobject, Elixir (слой поверх sqlalchemy), PonyORM.Peewee - лучшее, что я когда-либо видел в сообществе питонов, и это ближе к основным ORM для ruby ​​или для php.

Peewee также имеет много драгоценных камней, например, это сочетание клавиш

Person.get_or_create(name='Foo', surname='Bar')

, которые автоматически берут человека с именем 'Foo Bar' из БД, если он существует, в противном случае он его создает.

1 голос
/ 08 февраля 2018

Только что закончил этот очень простой и крутой объектно-ориентированный слой python.

https://github.com/lxknvlk/python_orm_sqlite

0 голосов
/ 18 февраля 2015

Вы можете оформить заказ RabaDB .Возможно, он имеет один из простейших интерфейсов.

class Human(R.Raba) :
        _raba_namespace = 'test_namespace'

        #Everything that is not a raba object is primitive
        name = rf.Primitive()
        age = rf.Primitive()
        city = rf.Primitive()

        #Only Cars can fit into this relation
        cars = rf.Relation('Car')

        #best friend can only be a human
        bestFriend = rf.RabaObject('Human')

Он оптимизирован для небольшого потребления памяти, поддерживает запросы на примерах, наследование, имеет инструменты отладки и даже позволяет использовать SQL, еслинеобходимо.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...