sqliteq: method is not supported during get_or_create
Correct. The docs state this:

> The downside, however, is that you cannot issue write transactions that encompass multiple queries – all writes run in autocommit mode, essentially.

To prevent users from shooting themselves in the foot, transaction APIs are disabled.

The problem is you're mixing two paradigms for multi-threaded database access. SqliteQ is only suitable for certain classes of problem...specifically, those where writes can be issued in autocommit mode. To do get-or-create you really need a multi-statement transaction... something like SELECT ... FOR UPDATE, which Sqlite doesn't support. It *does* however support the non-standard INSERT OR REPLACE query, which is perfect for get-or-create, as long as you have a constraint in place.

So I'd suggest changing your get-or-create to an INSERT OR REPLACE query, enforced by a constraint. Or alternatively do not use SqliteQ. ok. Which sqlite engine should I use with my asyncio program (only event loop access to the sqlite file)? Oh brother... asyncio is a garbage fire. I have no idea, but definitely not sqliteq. why so ?

`get_or_create` raises an exception when the row does not exist when using sqliteq
```
except cls.DoesNotExist:
    try:
        params = dict((k, v) for k, v in kwargs.items()
                      if '__' not in k)
        params.update(defaults)
        with cls._meta.database.atomic():
            return cls.create(**params), True
```
The `cls._meta.database.atomic()` cannot works, because we have in `sqlite.py`:
```
atomic = transaction = savepoint = __unsupported__
```