This commit is contained in:
Alen Mistric 2018-09-16 04:02:41 +00:00 committed by GitHub
commit c185b8713c
No known key found for this signature in database
GPG Key ID: 4AEE18F83AFDEB23
4 changed files with 45 additions and 37 deletions

View File

@ -1,5 +1,27 @@
os: linux
language: python
sudo: false # faster builds
before_install: pip install tox
matrix:
include:
- python: 3.6
env: TOXENV=py,devel
- python: 3.5
env: TOXENV=py,devel
- python: 3.4
env: TOXENV=py,devel
- python: 2.7
env: TOXENV=py,devel
script: tox
install:
- pip install tox
script:
- tox
branches:
only:
- master
notifications:
email: false

View File

@ -1,10 +1,7 @@
=====================
Bottle-SQLite
=====================
=============
.. image:: https://travis-ci.org/bottlepy/bottle-sqlite.png?branch=master
:target: https://travis-ci.org/bottlepy/bottle-sqlite
:alt: Build Status - Travis CI
[![Build Status](https://travis-ci.org/alenmeister/bottle-sqlite.svg?branch=master)](https://travis-ci.org/alenmeister/bottle-sqlite)
SQLite is a self-contained SQL database engine that runs locally and does not
require any additional server software or setup. The sqlite3 module is part of the
@ -17,25 +14,24 @@ Once installed, all you have to do is to add a ``db`` keyword argument
(configurable) to route callbacks that need a database connection.
Installation
===============
------------
Install with one of the following commands::
$ pip install bottle-sqlite
$ easy_install bottle-sqlite
or download the latest version from github::
or download the latest version from github:
$ git clone git://github.com/bottlepy/bottle-sqlite.git
$ cd bottle-sqlite
$ python setup.py install
Usage
===============
-----
Once installed to an application, the plugin passes an open
:class:`sqlite3.Connection` instance to all routes that require a ``db`` keyword
argument::
Once installed to an application, the plugin passes an open `sqlite3.Connection`
instance to all routes that require a ``db`` keyword argument:
import bottle
@ -59,14 +55,14 @@ closed automatically. If an error occurs, any changes to the database since the
last commit are rolled back to keep the database in a consistent state.
Configuration
=============
-------------
The following configuration options exist for the plugin class:
* **dbfile**: Database filename (default: in-memory database).
* **keyword**: The keyword argument name that triggers the plugin (default: 'db').
* **autocommit**: Whether or not to commit outstanding transactions at the end of the request cycle (default: True).
* **dictrows**: Whether or not to support dict-like access to row objects (default: True).
* **dbfile**: Database filename (default: in-memory database)
* **keyword**: The keyword argument name that triggers the plugin (default: 'db')
* **autocommit**: Whether or not to commit outstanding transactions at the end of the request cycle (default: True)
* **dictrows**: Whether or not to support dict-like access to row objects (default: True)
You can override each of these values on a per-route basis::
@ -74,7 +70,7 @@ You can override each of these values on a per-route basis::
def cache(item, db):
...
or install two plugins with different ``keyword`` settings to the same application::
or install two plugins with different ``keyword`` settings to the same application:
app = bottle.Bottle()
test_db = bottle.ext.sqlite.Plugin(dbfile='/tmp/test.db')

View File

@ -1,3 +1,5 @@
#!/usr/bin/python3
# -*- coding: utf-8 -*-
'''
Bottle-sqlite is a plugin that integrates SQLite3 with your Bottle
application. It automatically connects to a database at the beginning of a

24
tox.ini
View File

@ -1,22 +1,10 @@
[tox]
envlist = py27-bottledev,py27-bottle012,py27-bottle011,py27-bottle010,py27-bottle09,py26,py27,py32,py33,pypy
envlist =
py{36,35,34,27,py}
py{36,27}-devel
[testenv]
deps=bottle
commands={envpython} test.py
sitepackages=False
deps =
bottle
[testenv:py27-bottle09]
deps=bottle>=0.9,<0.10
[testenv:py27-bottle010]
deps=bottle>=0.10,<0.11
[testenv:py27-bottle011]
deps=bottle>=0.11,<0.12
[testenv:py27-bottle012]
deps=bottle>=0.12,<0.13
[testenv:py27-bottledev]
deps=git+https://github.com/defnull/bottle.git#egg=bottle
devel: https://github.com/bottlepy/bottle/archive/master.zip