轻量级python库,用于solr索引、搜索和模式管理,具有可选的django集成。

parasolr的Python项目详细描述


^ STR 1 } $ SypOrrs是一个轻量级的Python库,用于{a1}索引, 使用可选的Django集成进行搜索和模式管理。 它包括一个solr客户端(parasolr.solr.solr client)。与一起使用时 django,它提供用于更新solr模式的管理命令 配置和索引内容。

  • PyPI versionPyPI - Python VersionPyPI - Django VersionPyPI - License
  • Build statusCode coverageDocumentation StatusCodeFactorMaintainabilityRequirements Status

目前针对Python3.5和3.6、Solr6.6.5和Django1.11进行了测试, 2.0和2.1,没有django。

安装

从pypi安装发布的版本:

pip install parasolr

从github安装未发行版本:

pip install git+https://github.com/Princeton-CDH/parasolr@develop#egg=parasolr

与django一起使用:

  • 将Parasolr添加到已安装的应用程序中

  • 在django设置中配置solr_连接

    SOLR_CONNECTIONS = {
        'default': {
        'URL': 'http://localhost:8983/solr/',
        'COLLECTION': 'name',
        # any configSet in SOLR_ROOT/server/solr/configsets
        'CONFIGSET': 'basic_configs' # optional, basic_configs is default
        }
    }
    
  • 为项目定义一个带有字段和字段类型的solrschema。

  • 运行solr_schemamanage命令来配置架构;它将 如果不存在,则提示创建SOLR内核。

注意

必须在某处导入solrschema 自动找到。

开发说明

这个git存储库使用git流分支约定。

初始设置和安装:

  • 建议:创建并激活python 3.6虚拟机v:

    python3 -m venv parasolr
    source parasolr/bin/activate
    
  • 安装包及其依赖项和开发 依赖关系:

    pip install -e .
    pip install -e '.[dev]'
    

单元测试

单元测试是用pytest编写的,但是使用一些django 测试类与django测试套件的兼容性。运行测试 需要Django所需配置的最小设置文件。

  • 复制示例测试设置并添加密钥:

    cp ci/testsettings.py.sample testsettings.py
    python -c "import uuid; print('\nSECRET_KEY = \'%s\'' % uuid.uuid4())" >> testsettings.py
    
  • 要运行测试,请使用已配置的setup.py test命令:

    python setup.py test
    
  • 或者在中安装测试要求并直接使用pytest:

    pip install -e '.[test]'
    pytest
    

欢迎加入QQ群-->: 979659372 Python中文网_新手群

推荐PyPI第三方库


热门话题
java如何从Android本地存储获取媒体文件(图像、视频、音频)?   toarray Java对象数组项到字符串数组   java读取逗号分隔的配置文件的最佳方式是什么?   多线程当需要多次设置和取消时,如何在Java中使用计时器?   java Tomcat:启动。蝙蝠不见了   java通过将子路径映射到不同的控制器来拆分Spring控制器   java如何使用加密算法创建自己的安全提供者?   java如何在给定执行时间的情况下,在每个固定的时间段调用该方法   java使用Tomcat运行Servlet   java Apache poi项目符号和编号   java如何在没有毫秒的情况下打印DateTime   java在springdatajpa中按一个字段过滤而不键入query时,如何为另一个字段编写两个条件?   java为什么@Transactional在另一个提交失败时不回滚一个提交?   java为什么浏览器会将大写字母转换为小写字母?   Ajax请求的javascript问题(Liferay)   java如何在选择其他jList时更新jList   JavaSpring,XMLCOnfiguration:不在xml文件中指明注释是如何工作的?   java,包括web中的文件。xml