Fixed a typo in the setup.py and wrapped the other django import in __init__.py so you could call get_version without having django installed. Also increased the version number to 0.2.1

This commit is contained in:
Corey Oordt 2010-04-06 07:53:37 -04:00
parent 81d07c859d
commit 8a5c137eb6
2 changed files with 29 additions and 26 deletions

View file

@ -1,11 +1,7 @@
import fields
from django.db.models import FieldDoesNotExist
__version_info__ = {
'major': 0,
'minor': 2,
'micro': 0,
'micro': 1,
'releaselevel': 'final',
'serial': 0
}
@ -21,27 +17,34 @@ def get_version():
__version__ = get_version()
class AlreadyRegistered(Exception):
"""
An attempt was made to register a model more than once.
"""
pass
try:
import fields
registry = {}
from django.db.models import FieldDoesNotExist
def register_m2m(model, field_name='categories', extra_params={}):
return _register(model, field_name, extra_params, fields.CategoryM2MField)
class AlreadyRegistered(Exception):
"""
An attempt was made to register a model more than once.
"""
pass
registry = {}
def register_m2m(model, field_name='categories', extra_params={}):
return _register(model, field_name, extra_params, fields.CategoryM2MField)
def register_fk(model, field_name='category', extra_params={}):
return _register(model, field_name, extra_params, fields.CategoryFKField)
def register_fk(model, field_name='category', extra_params={}):
return _register(model, field_name, extra_params, fields.CategoryFKField)
def _register(model, field_name, extra_params={}, field=fields.CategoryFKField):
registry_name = "%s.%s" % (model.__name__, field_name)
if registry_name in registry:
raise AlreadyRegistered
registry[registry_name] = model
opts = model._meta
try:
opts.get_field(field_name)
except FieldDoesNotExist:
field(**extra_params).contribute_to_class(model, field_name)
def _register(model, field_name, extra_params={}, field=fields.CategoryFKField):
registry_name = "%s.%s" % (model.__name__, field_name)
if registry_name in registry:
raise AlreadyRegistered
registry[registry_name] = model
opts = model._meta
try:
opts.get_field(field_name)
except FieldDoesNotExist:
field(**extra_params).contribute_to_class(model, field_name)
except ImportError:
pass

View file

@ -7,7 +7,7 @@ except IOError:
long_description = ''
setup(name='django-categories',
version=catgories.get_version(),
version=categories.get_version(),
description='A way to handle one or more hierarchical category trees in django.',
long_description=long_description,
author='Corey Oordt',