Django应用程序用作注释器.js 2.x注释器存储后端
annotator_store的Python项目详细描述
annotator_store是一个Django 在Django项目中用作 annotator.js2.x注释 存储后端,并实现Annotator Storage API
annotator\u store最初是作为 Readux。
许可证
此软件在Apache2.0许可下分发
安装
使用PIP安装:
pip install
您也可以从github安装。使用分支或标记名,例如。 @develop或@1.0,以安装特定的标记发布或分支:
pip install git+https://github.com/Princeton-CDH/django-annotator-store.git@develop#egg=annotator_store
配置
将注释器存储区添加到已安装的应用程序中,并确保其他 已启用所需组件:
INSTALLED_APPS = ( ... 'django.contrib.auth', 'django.contrib.admin', 'django.contrib.contenttypes', 'django.contrib.sessions', 'django.contrib.sites', 'annotator_store', ... )
在所需的基url处包含注释存储API url 命名空间:
from annotator_store import views as annotator_views urlpatterns = [ # annotations url(r'^annotations/api/', include('annotator_store.urls', namespace='annotation-api')), # annotatorjs doesn't handle trailing slash in api prefix url url(r'^annotations/api', annotator_views.AnnotationIndex.as_view(), name='annotation-api-prefix'), ]
运行迁移以创建注释数据库表:
python manage.py migrate
注意
如果要对单个批注(而不是 标准的基于django类型的权限),还必须安装 django guardian并在您的 已安装的应用程序。在Django中必须打开每对象权限 通过将ANNOTATION_OBJECT_PERMISSIONS设置为True
自定义批注模型
此模块旨在允许使用自定义注释模型,以便 向应用程序中的其他模型添加功能或关系。 为了利用这个特性,您应该扩展抽象模型 注释器存储.models.baseannotation并在中配置模型 Django设置,例如:
ANNOTATOR_ANNOTATION_MODEL = 'myapp.LocalAnnotation'
如果希望对批注模型拥有每个对象的权限,则应 扩展注释器存储.models.annotationwithpermissions而不是 基本注释类。
注意
每对象权限要求a permissions plugin 初始化annotator.js注释器对象时包含。 该代码当前可用作Readux codebase中的插件
开发说明
这个git存储库使用git flow分支约定
初始设置和安装:
建议:创建并激活python virtualenv:
virtualenv annotator-store source annotator-store/bin/activate
pip安装包及其python依赖项:
pip install -e .
单元测试
单元测试使用py.test运行,但使用 django测试类,以方便和兼容django测试套件。 运行测试需要django的最小设置文件 配置
复制示例测试设置并添加secret_密钥:
cp ci/testsettings.py testsettings.py
要运行测试,请使用已配置的setup.py test命令:
python setup.py test
或者安装测试要求并直接使用py.test:
pip install -e '.[test]' py.test
Sphinx文档
要使用sphinx文档,请直接通过pip安装sphinx 或通过:
pip install -e '.[docs]'
文档可以在docs目录中使用:
make html