Invenio是一个开源的数字图书馆框架,我现在所要讲解以及使用的是在InvenioV3版本前的一个稳定版,我将会对该版本的开发文档进行中文的翻译(Invenio 稳定版文档),以及我自己也会在服务器上配置该框架,我会将我的经验与开发文档融合,帮助后面的人能够更好的使用这个框架。
先介绍一下Invenio开发文档,这个文档分为不同的部分,建议学习该文档的人首先了解一下Invenio,可以看我上一篇博客(Invenio数字图书馆框架),这里我也会在进行Invenio部分讲解。了解完Invenio之后,直接进入快速开始模块(Quick Start)。在快速开始模块中,有一个详细的指导来教你如何使用Invenio快速创建 一个完整的应用。如果你想钻研Invenio的内部结构,查看API文档。共有模式在模式(Pattern)部分进行讲解。
Invenio依赖很多外部的库
- the Flask microframework for Python (based on Werkzeug and Jinja2),
- the Jinja2 template engine,
- the Werkzeug WSGI toolkit,
- the SQLAlchemy SQL toolkit and Object Relational Mapper
Flask是一个使用 Python 编写的轻量级 Web 应用框架。基于 WerkzeugWSGI工具箱和 Jinja2模板引擎。Flask使用 BSD 授权。
Werkzeug是一个WSGI功能库。WSGI本身是一个用来确保你的web应用能够与webserver进行对话,更重要的是,确保web应用之间能够一起配合工作的协议或约定。
SQLAlchemy是Python编程语言下的一款开源软件。提供了SQL工具包及对象关系映射(ORM)工具,使用MIT许可证发行。
下面将对Invenio进行介绍
(一)什么是注册表
注册表在一个机器上是用来支持使用Python包可插入体系结构一种机制。 一个注册项是Python包,类,方法或文件,它们与Python应用相对应。
注册表可以通过许多种方式配置,通常使用一个配置变量(config variable)或者entry_points。
一个Invenio 实例可以由很多的包组成,能够有很高的适应性以及水平扩展能力。
(二)我们需要什么
Invenio需要一个相关的数据库后端来存储信息。MySQL或者PostgreSQL需要基本的功能,同时它也支持MongoDB或者其它实验NoSQL数据库,包括使用SQLite进行局部开发。
版本的需要,Invenio版本2.0运行在Python2.6,2.7,3.3上。这将是最后一个支持Python2.6的版本。
(三)如果这是你第一次想要使用Invenio,或者你对Invenio2.0之前版本比较陌生,那么你需要读如何使用Invenio的开始指导,我将在下篇文章进行详细的讲解。
声明:本站部分文章及图片源自用户投稿,如本站任何资料有侵权请您尽早请联系jinwei@zod.com.cn进行处理,非常感谢!