当前位置: 首页 > 工具软件 > Invenio > 使用案例 >

Invenio开发指导(一)--Invenio介绍

段干开宇
2023-12-01

    这篇博客总结了在Invenio中框架的使用。它描述了扩展和模型的剖析,以及跨模型可插入组件概念。

     Invenio开发采用了下面原则。

  •     约定优于配置:提供给你通用的基础模块构建,因此,你仅仅使用他们。如果你不确定或者确定特性文档丢失,通过邮件列表联系开发者。
  •     不要重复你自己来帮助我们保证软件的可维护性。重复的代码段使应用代码块变得巨大,更重要的是,在未来的开发中,它可能成为许多错误的根源。
  •     敏捷开发:每一次迭代都应该在相对较短时间内引导工作代码,而工作的增量是小的,同时应该容易被其它的开发者所理解。当你开始开发的时候,利用Python提供已经开发好内置工具以及下面的库。

  # Install package in editable mode
  $ pip install -e git+http://invenio-software.org/repo/invenio.git
  # Follow the instructions in src/invenio/INSTALL file.
  # Edit a file
  $ `$EDITOR` src/invenio/invenio/<module>/<file>.py
  # See that your server has been reloaded automatically.
    当你已经完成上面的编辑,不要忘记我们的测试来保证所有其它的模块都工作的很好。(python setup.py test)

    扩展:

    这里使用了许多Flask框架的扩展,通过不同的方式扩展了你应用的功能。例如,它能够支持数据库,用户认证&权限,菜单&导览以及其它共同任务。

    能够在Flask 扩展注册表中发现许多Flask扩展。所有的扩展从extension配置选项表中自动加载。如果他们要一个功能setup_app(APP)或功能的应用程序需要指定接受。

    更多的内容请点击扩展

    模块:

    模块是应用的组件,可以在一个应用或者多个应用之间使用。它们包含SQLalchemyFlask 视图,jinja2模板等等插件。

    基于配置参数PACKAGES的发现模块已经做好了,在最后一个点之后,扩展字符*在最后的包路径已经得到支持。

    更多的内容请点击模块

 类似资料: