Fix dhellmann's notes from April 18

removed the python 3 classifier. See note
e4cfa6d39d (commitcomment-6058177)

added W292 pep8 check. See note
276f7570d7 (commitcomment-6058296)

added usage examples. See note
e4cfa6d39d (commitcomment-6058130)
This commit is contained in:
Victor Sergeyev 2014-04-22 18:11:55 +03:00
parent 276f7570d7
commit b50609bc0e
5 changed files with 65 additions and 7 deletions

View File

@ -2,6 +2,66 @@
Usage
========
To use in a project::
To use oslo.db in a project::
* Session Handling
.. code:: python
from oslo.db.sqlalchemy import session as db_session
_FACADE = None
def _create_facade_lazily():
global _FACADE
if _FACADE is None:
_FACADE = db_session.EngineFacade.from_config(
CONF.database.connection, CONF)
return _FACADE
def get_engine():
facade = _create_facade_lazily()
return facade.get_engine()
def get_session(**kwargs):
facade = _create_facade_lazily()
return facade.get_session(**kwargs)
* Base class for models usage
.. code:: python
from oslo.db import models
class ProjectSomething(models.TimestampMixin,
models.ModelBase):
id = Column(Integer, primary_key=True)
...
* DB API backend support
.. code:: python
from oslo.config import cfg
from oslo.db import api as db_api
CONF = cfg.CONF
CONF.import_opt('backend', 'oslo.db.options', group='database')
_BACKEND_MAPPING = {'sqlalchemy': 'project.db.sqlalchemy.api'}
IMPL = db_api.DBAPI(CONF.database.backend, backend_mapping=_BACKEND_MAPPING)
def get_engine():
return IMPL.get_engine()
def get_session():
return IMPL.get_session()
# DB-API method
def do_something(somethind_id):
return IMPL.do_something(somethind_id)
import db

View File

@ -12,4 +12,4 @@
# License for the specific language governing permissions and limitations
# under the License.
__import__('pkg_resources').declare_namespace(__name__)
__import__('pkg_resources').declare_namespace(__name__)

View File

@ -16,8 +16,6 @@ classifier =
Programming Language :: Python :: 2
Programming Language :: Python :: 2.7
Programming Language :: Python :: 2.6
Programming Language :: Python :: 3
Programming Language :: Python :: 3.3
[files]
packages =

View File

@ -19,4 +19,4 @@ import setuptools
setuptools.setup(
setup_requires=['pbr'],
pbr=True)
pbr=True)

View File

@ -31,6 +31,6 @@ commands = OSLO_LOCK_PATH=/tmp/ python setup.py testr --coverage --testr-args='{
# E123, E125 skipped as they are invalid PEP-8.
show-source = True
ignore = E123,E125,H803,W292
ignore = E123,E125,H803
builtins = _
exclude=.venv,.git,.tox,dist,doc,*openstack/common*,*lib/python*,*egg,build