跳转到主要内容

基于Web的管理,用于使用Python/Django对物品进行编目,包括状态和位置等。

项目描述

PyInventory

基于Web的管理,用于使用Python/Django对物品进行编目,包括状态和位置等。在WYSIWYG-HTML-编辑器字段中存储信息,并对其进行标记,并将文件、图片和链接添加到其中。

tests codecov PyInventory @ PyPi Python Versions License GPL-3.0-or-later

Install PyInventory with YunoHost

pyinventory_ynh 允许您在YunoHost服务器上快速简单地安装PyInventory。如果您没有YunoHost,请参阅指南了解如何安装。

欢迎提交拉取请求!

关于

本项目的重点是管理复古计算硬件。

当前功能

  • 基于Web
  • 多用户就绪(每个用户只能查看和管理自己的条目)
  • 混乱的仓库
    • 分组“物品”,例如:图形卡Foo在电脑Bar中
  • 数据结构尽可能通用
  • 管理每个物品的信息
    • 描述:免费的WYSIWYG-HTML-编辑器字段
    • 存储位置
    • 状态
    • 图片、文件和Web链接
    • 接收和发送(何时、从何人、价格等)
  • 管理“备忘录”(与物品/位置无关的信息)
    • 免费的WYSIWYG-HTML-编辑器字段
    • 标签
    • 图片、文件和Web链接

未来想法

  • 信息:公开可见是/否
    • 现有物品的公开列表(想想看,您可以在个人资料中设置是否要设置)
    • 管理愿望清单和交换列表

还有很多... ;)

屏幕截图

更多屏幕截图在这里: jedie.github.io/tree/master/screenshots/PyInventory

PyInventory v0.2.0 screenshot 1.png


PyInventory v0.11.0 screenshot memo 1.png


PyInventory v0.1.0 screenshot 2.png


PyInventory v0.1.0 screenshot 3.png


多用户支持

PyInventory支持多用户。想法

  • 每个普通用户只能看到自己创建的数据库条目
  • 所有用户都使用Django管理

注意:所有创建的标签都是所有现有用户共享的!

因此,设置一个普通用户

  • 设置“工作人员状态”
  • 取消“超级用户状态”
  • 将用户添加到“normal_user”组
  • 不要添加任何额外的权限

例如:

normal user example

更多屏幕截图在这里: jedie.github.io/tree/master/screenshots/PyInventory

本地开发安装

例如:

# Clone project (Use your fork SSH url!):
~$ git clone https://github.com/jedie/PyInventory.git
~$ cd PyInventory
~/PyInventory$ ./manage.py

运行本地测试服务器有助于编写和调试unittests。例如:

~/PyInventory$ ./manage.py run_dev_server

网页可通过以下链接访问:http://127.0.0.1:8000/

您也可以传递其他端口号或ipaddr:port组合。请参阅:./manage.py run_dev_server --help

运行测试,例如:

~/PyInventory$ ./manage.py test
~/PyInventory$ ./manage.py coverage
~/PyInventory$ ./manage.py tox

安装Playwright浏览器,例如:

~/PyInventory$ .venv/bin/playwright install

仅使用Playwright Inspector运行Playwright测试,例如:

~/PyInventory$ PWDEBUG=1 ./manage.py test --tag playwright

向后不兼容的更改

v0.19.0

  • 移除"/development/"(未维护的"docker-compose"安装),请使用YunoHost ;)
  • 在测试项目中移除了django-processinfodjango-axes
  • 移除poetrypytestdevshell
  • 使用pip-toolsunittestsmanage_django_project

v0.20

出于安全原因,将ckeditor包替换为prose-editor

在0.20.1中,我们切换到https://github.com/jazzband/django-tinymce/,因为prose-editor没有表格支持。

发布新版本

我们使用cli-base-utilities在此README中生成历史记录。

要发布新版本,请执行以下操作

  • 增加您的项目版本号
  • 运行测试以更新README
  • 提交更改
  • 创建发布

历史记录

  • v0.20.1
  • v0.20.0
    • 2024-09-05 - 替换django-ckeditor为django-prose-editor并修复测试
    • 2024-09-05 - 项目更新
    • 2024-01-16 - 在测试中使用typeguard
    • 2024-01-16 - 更新要求
  • v0.19.3
    • 2023-11-01 - 自动生成README历史记录
    • 2023-11-01 - 更新要求
    • 2023-10-31 - 修复位置管理页面上“父”字段的问题
    • 2023-10-31 - 修复开发本地测试设置的bug
    • 2023-10-08 - 从manage-django-project使用playwrigth管理命令
    • 2023-09-24 - 更新测试快照文件
    • 2023-09-24 - 添加playwright CLI包装命令
  • v0.19.2
    • 2023-08-17 - 通过添加“requests”作为常规依赖项修复打包问题
    • 2023-08-17 - 通过添加“requests”作为常规依赖项修复打包问题
展开更早的历史记录...
  • v0.19.1
    • 2023-08-17 - 更新要求
    • 2023-08-17 - 从项目模板更新
  • v0.19.0
    • 2023-07-21 - 更新README.md
    • 2023-07-21 - 从"poetry-python"迁移到"managed-django-project"
    • 2023-07-21 - 将源代码从/src/迁移
    • 2023-07-21 - 移除"/development/" - 未维护的"docker-compose"安装
    • 2023-07-21 - 修复tox运行问题
    • 2023-07-21 - 更新到Django 4.2
    • 2023-07-21 - FIXME: 从ItemModelAdmin.list_display中移除'reorder'
    • 2023-07-20 - 更改物品列表:将"producer"移动到第一个
  • v0.18.1
    • 2023-07-15 - 更新要求 + 修复测试快照
    • 2023-06-11 - 更新要求
  • v0.18.0
    • 2023-04-04 - 应用manageprojects更新
    • 2022-12-22 - 通过tagulous bug修复缺少静态文件的问题
    • 2022-12-22 - 项目更新
    • 2022-12-22 - 更新要求
  • v0.17.0
    • 2022-10-03 - 更新要求
    • 2022-10-03 - 检查django-revision集成
    • 2022-09-30 - 增强“位置”:更好的更改表单并在此位置列出所有物品
    • 2022-09-30 - 新功能:在location更改列表中列出物品数量
    • 2022-09-30 - 新功能:在item更改页面上列出所有相关对象并附带编辑链接。
    • 2022-09-30 - 通过“packaging”验证当前版本,将其设置为v0.17.0rc0
    • 2022-09-30 - 在物品中添加自动完成字段
  • v0.16.0
    • 2022-09-13 - 修复缺少CK-Editor的bug
    • 2022-09-13 - 更新devshell并跳过损坏的诗集v1.2.0
    • 2022-09-04 - 更新README.md
    • 2022-08-22 - 将README.creole替换为README.md
    • 2022-08-22 - 修复README.creole中的错误列表
    • 2022-08-29 - 更新需求
  • v0.15.0
    • 2022-08-18 - 使用django-tools中的run_testserver和AlwaysLoggedInAsSuperUserMiddleware
    • 2022-08-16 - 更新需求
    • 2022-07-28 - line_length = 100
    • 2022-07-28 - 添加"./devsetup.py manage seed_data"命令
    • 2022-07-28 - 为超级用户提供更好的变更列表
    • 2022-07-28 - 通过预取"位置"来加速项目变更列表
    • 2022-07-28 - 修复项目设置和"最大行长度"信息
  • v0.14.0
    • 2022-07-21 - WIP: 通过为项目存储树信息来解决#102问题
    • 2022-07-21 - 修复devshell "manage"命令的bug
  • v0.13.1
    • 2022-07-21 - 修复发布问题
    • 2022-07-21 - 更新到新的devshell版本
    • 2022-07-21 - 更新需求
    • 2022-06-29 - 修复将覆盖率上传到codecov.io的问题
    • 2022-06-29 - 扩展Playwright测试并添加带有标签和图片的项目
    • 2022-06-20 - 将Selenium测试替换为Playwright
    • 2022-06-20 - 使用Python 3.10运行测试,并更新需求
    • 2022-05-16 - 使用bx_django_utils中的assert_html_response_snapshot
    • 2022-05-16 - 更新pyproject.toml
    • 2022-02-05 - 代码风格:将行长度降低到100
    • 2022-02-05 - 修复devshell CLI运行
    • 2022-02-05 - 删除单独的linting步骤(pytest运行检查代码风格)
    • 2022-01-30 - 更新README:"master" -> "main"
    • 2022-01-30 - 切换到较暗的代码风格器
  • v0.13.0
    • 2022-01-01 - 添加devshell命令:"update_test_snapshots"
    • 2021-12-05 - 更新需求
    • 2021-12-05 - 默认激活安全设置
    • 2021-12-05 - 在测试中测试"manage.py check"
    • 2021-12-05 - 在测试中设置DEBUG
    • 2021-11-24 - 废弃docker-compose生产使用
    • 2021-11-24 - 添加加泰罗尼亚语和西班牙语的翻译。需要编译po文件。
  • v0.12.0
    • 2021-11-22 - 删除过时文件
    • 2021-11-22 - 修复#75:保护不使用较新版本覆盖较旧版本
    • 2021-11-20 - 更新ci.yml
    • 2021-11-20 - 更新需求
    • 2021-11-20 - 通过mock {% now "Z" %}修复测试的bug
  • v0.11.0
    • 2021-10-09 - 更新README
    • 2021-10-09 - 新增Memo模型/admin:独立于项目/位置存储信息
    • 2021-10-09 - 修复CKEditor
  • v0.10.1
    • 2021-10-09 - 在bx_py_utils中使用新的assert_html_snapshot()
    • 2021-10-09 - 在保存时进行更少的请求
    • 2021-10-09 - 更新README
    • 2021-10-09 - 更新到Django 3.1.x
    • 2021-10-09 - 在HTML验证错误时提供更好的跟踪
    • 2021-10-09 - 以美观格式比较HTML代码
  • v0.10.0
    • 2021-09-29 - 组合项目:默认"自动"模式,可以通过过滤器操作禁用
    • 2021-09-29 - 更新需求。
  • v0.9.4
  • v0.9.3
    • 2021-09-15 - 更新"django-tagulous" v1.2 -> v1.3
    • 2021-09-15 - 优化"items"变更列表查询
    • 2021-09-15 - 修复错误翻译
    • 2021-08-16 - 修复#56 "psycopg2-binary" 在ARM板上不可安装的问题
    • 2021-08-16 - 更新需求
    • 2021-08-04 - 将CLI参数传递给"run_testserver"命令
  • v0.9.2
    • 2021-05-11 - 更新需求和README
    • 2021-05-10 - 修复#50 - 错误的异常记录
  • v0.9.1
    • 2021-04-28 - 发布v0.9.1
    • 2021-04-28 - 新增:将文件添加到项目中。
    • 2021-04-28 - 如果使用Django开发服务器,则自动登录
    • 2021-04-28 - 修复测试
    • 2021-04-28 - 删除manage.sh
    • 2021-04-28 - 再次修复manage调用
    • 2021-04-28 - 修复manage调用
    • 2021-04-28 - 更新需求
    • 2021-04-13 - 通过测试从dev-shell更新自己的bootstrap文件
  • v0.9.0
    • 2021-04-11 - 更新"deployment/project.env",也
    • 2021-04-11 - 发布为v0.9.0
    • 2021-04-11 - 修复gitignore
    • 2021-04-11 - 更新devshell到v0.2.0
    • 2021-04-05 - 使用 https://github.com/jedie/dev-shell
  • v0.8.4
    • 2021-01-19 - 更新需求
    • 2021-01-19 - 通过 "kind" 和 "tags" 在变更列表中搜索项目
    • 2020-12-29 - 删除过时的徽章
  • v0.8.3
    • 2020-12-29 - 删除 colorama 并更新需求
    • 2020-12-29 - +添加关于运行 Docker 容器的信息
    • 2020-12-29 - 在调用 "poetry update" 之前更新 pip
    • 2020-12-29 - 只通过 pip 安装 poetry
  • v0.8.2
    • 2020-12-20 - 发布 v0.8.2
    • 2020-12-20 - 添加创建新项目的测试
    • 2020-12-20 - 通过在保存图像之前设置用户来解决 #33 问题
    • 2020-12-20 - 将 get_queryset() 移动到基类
    • 2020-12-20 - 更新需求
    • 2020-12-20 - 误拼
  • v0.8.1
    • 2020-12-09 - 0.8.1rc2
    • 2020-12-09 - 更新需求
    • 2020-12-09 - 更新 README 并以 0.8.1rc2 发布
    • 2020-12-09 - 通过使用 URL 模式名称而不是硬编码的 URL 来修复 admin 重定向
    • 2020-12-07 - 修复迁移:如果没有要迁移的内容,则不要创建 "/media/migrate.log"
  • v0.8.0
    • 2020-12-06 - 发布 v0.8.0rc1
    • 2020-12-06 - 使用 "serve_media_app" 来提供用户上传
    • 2020-12-06 - 更新需求
  • v0.7.0
    • 2020-11-23 - 修复测试错误
    • 2020-11-23 - 0.7.0rc2
    • 2020-11-23 - 将 .env 替换为 project.env
    • 2020-11-23 - 修复 Dockerfile 和项目的安装
    • 2020-11-23 - 在 Dockerfile 中设置 XDG_CACHE_HOME 和 PYTHONUNBUFFERED
    • 2020-11-23 - 清理 docker-compose.dev.yml
    • 2020-11-23 - 修复网关问题:gunicorn 必须绑定到 "django:8000"
    • 2020-11-22 - 将一些 gunicorn 设置移动到 gunicorn.conf.py
    • 2020-11-22 - 以 "django" 用户运行 gunicorn,而不是 root 用户
    • 2020-11-22 - 设置 gunicorn 日志
    • 2020-11-22 - 修复 "make reload_django" 错误
    • 2020-11-22 - 修复 "make shell_docker-dev-server"
    • 2020-11-22 - 修复媒体文件:将它们保存到卷上
    • 2020-11-22 - 更通用的部署:将 "inventory" 重命名为 "django"
    • 2020-11-22 - 用 gunicorn 替换 uwsgi
    • 2020-11-22 - 构建之前拉取
  • v0.6.0
    • 2020-11-15 - 修复文件排除 lint/format 工具
    • 2020-11-15 - 添加上传用户图像的测试
    • 2020-11-15 - 删除 /media/ URL 末尾的斜杠
    • 2020-11-15 - 修复图像 str() im name is None
    • 2020-11-15 - 更新翻译
    • 2020-11-15 - 将图像存储到项目
    • 2020-11-14 - 更新部署设置
    • 2020-11-14 - 添加基本 selenium 测试
    • 2020-11-14 - 在 "make pytest" 中激活 pytest-parallel
    • 2020-11-14 - 使用 pytest-parallel
    • 2020-11-14 - 引用数据库名称和用户
  • v0.5.0
    • 2020-11-14 - 更新 "make update" 并从 master 拉取
    • 2020-11-14 - 设置 Caddy 卷 "data" 和 "config"
    • 2020-11-14 - 通过清理 dist 修复 "make run-docker-dev-server"
    • 2020-11-14 - 添加 "make run-docker-dev-server" 用于本地 Docker 测试运行
    • 2020-11-14 - 从 pytest 中排除 Docker 卷
    • 2020-11-14 - + "make createsuperuser"
    • 2020-11-14 - 删除未使用的 make 目标
    • 2020-11-14 - 修复构建模板目录路径
    • 2020-11-14 - 清理
    • 2020-11-14 - 在 Makefiles 中添加 "header"
    • 2020-11-14 - 更新部署 README
    • 2020-11-13 - 删除过时的 yapf 配置
    • 2020-11-13 - 将 .isort.cfg 移入 pyproject.toml
    • 2020-11-13 - 添加有关 https://gitlab.com/pycqa/flake8/-/issues/428 的说明
    • 2020-11-13 - 将 pytest.ini 移入 pyproject.toml
    • 2020-11-13 - 将 tox.ini 移入 pyproject.toml
    • 2020-11-13 - 修复 tox
    • 2020-11-13 - 更新需求
    • 2020-11-13 - WIP:修复项目布局
    • 2020-11-13 - 更新元文件路径
    • 2020-11-13 - 修复 github action
    • 2020-11-13 - 开始更新 README
    • 2020-11-13 - 设置 .gitignore
    • 2020-11-13 - 将内容移入 /src/
    • 2020-11-13 - 分离 pip 安装
    • 2020-11-13 - 更新默认安装
    • 2020-11-13 - 修复服务静态文件的错误
    • 2020-11-11 - 不要生成迁移文件
    • 2020-11-11 - 使用Caddy提供静态/媒体文件服务
    • 2020-11-11 - 添加 "make reload_caddy"
    • 2020-11-11 - 修复 Makefile 帮助目标中的错误
    • 2020-10-27 - +acpid
    • 2020-10-27 - 添加脚本 apt-cleanup.sh
    • 2020-10-27 - 添加一些注释
    • 2020-10-27 - 启动后进行清理(调用 "docker system prune")
    • 2020-10-27 - 更新 README
    • 2020-10-27 - 添加 .dockerignore
    • 2020-10-27 - 设置权限为 +x
    • 2020-10-27 - 添加 root 服务器辅助 shell 脚本
    • 2020-10-27 - 在 "make update" 时也更新 docker 容器
    • 2020-10-27 - 更新 README.creole
    • 2020-10-26 - 初始化部署分支
  • v0.4.2
    • 2020-11-13 - 修复代码风格
    • 2020-11-11 - 更新 README
    • 2020-11-11 - 减少 CKEditor 插件数量
    • 2020-11-11 - 移动开发脚本
    • 2020-11-11 - 设置 CKEditor 上传
    • 2020-11-11 - 添加 settings.SERVE_FILES 并仅针对本地开发提供静态文件服务
  • v0.4.1
    • 2020-11-02 - 准备 v0.4.1 版本发布
    • 2020-11-02 - 更新 requirements
    • 2020-11-02 - 更改模板上下文键:version_string -> inventory_version_string
  • v0.4.0
    • 2020-11-01 - 添加 Django-Processinfo
    • 2020-11-01 - 通过 pytest 测试代码风格
    • 2020-11-01 - 修复代码风格测试
    • 2020-11-01 - 重构/修复测试
    • 2020-11-01 - 添加 django-axes
    • 2020-10-27 - 更新 README
    • 2020-10-27 - 清理:移除 docker-compose 相关内容
    • 2020-10-27 - 在 README 中添加 python-forum.de 的链接
  • v0.3.2
    • 2020-10-26 - v0.3.2:移动翻译
    • 2020-10-26 - 移动翻译
  • v0.3.1
    • 2020-10-26 - 将 /locale/ 重命名为 /inventory_locales/ 并将其包含在包中
  • v0.3.0
    • 2020-10-26 - 更新 README
    • 2020-10-26 - 通过 Caddyfile 拒绝机器人访问
    • 2020-10-26 - 通过 html meta 拒绝机器人访问
    • 2020-10-26 - "隐藏" 登录页面上的信息
    • 2020-10-26 - 使用 inventory_project.settings.local 作为备用
    • 2020-10-25 - 将版本升级到 v0.3.0
    • 2020-10-25 - 不要链接静态文件:uWSGI 拒绝这些文件 ;)
    • 2020-10-25 - 在 docker-compose 使用中结合 caddy 和 uWSGI
    • 2020-10-25 - 重构设置
    • 2020-10-25 - 修复 https://github.com/radiac/django-tagulous/issues/101
    • 2020-10-25 - 将启动信息写入 stderr
    • 2020-10-25 - 修复 init 中的错误:将数据库访问从检查移动到 post-migrate 信号
  • v0.2.0
    • 2020-10-24 - 修复 "make fix-code-style"
    • 2020-10-24 - 更新 README 并准备 v0.2.0 版本发布
    • 2020-10-24 - 排序嵌套项
    • 2020-10-24 - 修复 BaseUserOnlyModelForm 中的错误
    • 2020-10-24 - "合并" 嵌套项
    • 2020-10-24 - 使 Location.description 可选
    • 2020-10-24 - 实现多用户使用
    • 2020-10-24 - 添加 Django dbbackup
    • 2020-10-24 - 基础激活 Django 导入/导出
    • 2020-10-24 - 通过 docker entrypoint 也安装新包
    • 2020-10-24 - 加速 make 使用
    • 2020-10-24 - 更新 README
    • 2020-10-24 - 将 docker-compose 的 "volumes" 目录从代码格式化和代码检查器中排除
    • 2020-10-24 - 修复代码风格
    • 2020-10-24 - 更新 requirements
    • 2020-10-24 - 在 README 中添加论坛链接
    • 2020-10-20 - 添加 docker-compose 使用方法
  • v0.1.0
    • 2020-10-17 - 修复 README.rst
    • 2020-10-17 - 更新截图
    • 2020-10-17 - 修复链接回退错误
    • 2020-10-17 - 修改 Tag 字段:case_sensitive=False, space_delimiter=False
    • 2020-10-17 - 设置带有版本号和指向 GitHub 的页脚链接的标题
    • 2020-10-17 - +test_update_rst_readme()
    • 2020-10-17 - 删除过时的 MANIFEST.in 文件并包含 AUTHORS
    • 2020-10-17 - 修复 pyupgrade 调用:排除 .tox 文件中的文件
    • 2020-10-17 - 添加项目设置测试
    • 2020-10-17 - 添加缺失迁移的测试
    • 2020-10-17 - 添加迁移
    • 2020-10-17 - 更新翻译
    • 2020-10-17 - 增强 admin
    • 2020-10-17 - 限制 ItemModel.parent 到 "root"-Elements
    • 2020-10-17 - 将ItemModel.description设置为可选
    • 2020-10-17 - 优化模型和后台
    • 2020-10-17 - 将'bx_py_utils'添加到INSTALLED_APPS以激活此包的翻译
    • 2020-10-16 - 更新README.creole
    • 2020-10-16 - 更新测试
    • 2020-10-16 - 添加德/英文翻译
    • 2020-10-16 - 基本项目使用
    • 2020-10-16 - 不要使用language_code作为URL的前缀
    • 2020-10-16 - 打印Django版本
    • 2020-10-16 - 修复CKeditor
    • 2020-10-16 - 修复忽略static/media
    • 2020-10-16 - 使用bx_py_utils中的TimetrackingBaseModel
    • 2020-10-16 - 使用默认模板设置
    • 2020-10-16 - 'ckeditor/ckeditor/' -> 'ckeditor/'
    • 2020-10-16 - 将static/media/sqlite移动到项目根路径
    • 2020-10-16 - 修复代码风格
    • 2020-10-16 - 修复isort配置bug
    • 2020-10-16 - 使用python 3.7 - 3.9进行测试
    • 2020-10-16 - 支持python >=3.7,<4.0.0
    • 2020-10-16 - 最小化Django项目设置
    • 2020-10-15 - 更新README
  • v0.0.1
    • 2020-10-14 - 初始化

链接

主页 http://github.com/jedie/PyInventory
PyPi https://pypi.ac.cn/project/PyInventory/

在此讨论

捐赠

项目详情


发布历史 发布通知 | RSS源

下载文件

下载适用于您平台上的文件。如果您不确定选择哪个,请了解更多关于安装包的信息。

源分发

pyinventory-0.20.1.tar.gz (153.5 kB 查看哈希值)

上传时间

构建分发

PyInventory-0.20.1-py3-none-any.whl (121.5 kB 查看哈希值)

上传时间 Python 3

由以下提供支持