Django框架的会计、簿记和财务分析引擎。
介绍__Django Ledger__,这是一个为使用Django Web框架的财务驱动应用程序设计的强大的复式记账系统。由首席开发者Miguel Sanda开发,该系统提供了简化的高级API,使用户更容易驾驭会计的复杂性。
如果您有Django的使用经验,您会发现这个软件更加有效。对于那些有兴趣贡献的人,可以考虑加入我们的新Discord频道,进行进一步的合作和讨论。
有问题?加入我们的Discord频道点击这里
文档
在这里访问最新的文档和快速入门指南。 另外,您可以在这里下载快速入门Jupyter笔记本。
主要特性
- 高级API。
- 复式记账系统。
- 多层次科目表。
- 财务报表(损益表、资产负债表和现金流量表)。
- 采购订单、销售订单(估价)、账单和发票。
- 自动财务比率和洞察计算。
- 多租户(多公司/用户/客户)。
- 自包含的分类账、日记账分录和交易。
- 基本OFX和QFX文件导入。
- 结账分录。
- 项目、清单和库存管理。
- 计量单位。
- 银行账户信息。
- Django管理类。
- 内置实体管理UI。
需要新功能或报告错误?
随时发起一个Issue来描述您的新功能请求。
想要贡献?
财务和会计是一个复杂的主题。Django Ledger与其他Django项目的不同之处在于它专注于提供一个对开发者友好的会计引擎和一个可靠、可扩展的API,用于财务驱动的应用程序。该项目需要Python、Django编程、财务和会计方面的专业知识。本质上,该项目正在寻找具有有效贡献所需特定技能的个人的帮助。
该项目正在积极寻找具有财务和/或会计经验的贡献者。对于潜在的贡献者来说,之前的会计经验是一个很大的优势。如果您有相关经验并想贡献,请随时联系我或提交您的拉取请求。
您可以在指定的链接找到贡献指南。 该项目欢迎任何有兴趣做出贡献的人。
参见__贡献指南__。
安装
Django Ledger是一个Django应用程序。如果您还没有,您需要对Django有工作知识并有一个可运行的Django项目,然后才能使用Django Ledger。一个好的起点是这里。
确保您参考的是您正在使用的Django版本。
最简单的开始方式是使用零配置的Django Ledger启动模板。详情参见这里。否则,您可以从头开始创建您的项目。
要创建一个新的Django Ledger项目:
-
确保您安装了最新版本的Python 点击这里(推荐)。
-
安装Django:
pip install django
- 安装Python Pipenv(Python包管理器):
pip install pipenv
- 转到您想要的开发文件夹并创建一个新的Django项目:
django-admin startproject django_ledger_project && cd django_ledger_project
- 在您的虚拟环境中安装Django。
pipenv install django
- 安装Django Ledger
pipenv install django-ledger[graphql,pdf]
- 激活您的新虚拟环境:
pipenv shell
- 在您的新Django项目的INSTALLED_APPS中添加django_ledger。
INSTALLED_APPS = [
...,
'django_ledger',
...,
]
- 执行数据库迁移:
python manage.py migrate
- 添加Django超级用户并按提示操作。
python manage.py createsuperuser
- 在项目的__urls.py__中添加URL:
from django.urls import include, path
urlpatterns = [
...,
path('ledger/', include('django_ledger.urls', namespace='django_ledger')),
...,
]
- 运行项目:
python manage.py runserver
- 导航到在项目urlpatterns设置中分配的Django Ledger根视图(如果您按照本安装指南操作,通常为http://127.0.0.1:8000/ledger)。
- 使用超级用户凭据登录。
如何设置Django Ledger用于开发
Django Ledger在__dev_env/__文件夹下已配置了一个基本的开发环境,不适用于生产环境。如果您想为项目做出贡献,请执行以下步骤:
- 导航到您的项目目录。
- 从github克隆仓库并进入项目目录。
git clone https://github.com/arrobalytics/django-ledger.git && cd django-ledger
- 安装PipEnv(如果尚未安装):
pip install -U pipenv
- 创建虚拟环境。
pipenv install
如果使用特定版本的Python,您可以指定解释器路径。
pipenv install --python PATH_TO_INTERPRETER
- 激活环境。
pipenv shell
- 应用迁移。
python manage.py migrate
- 创建开发Django用户。
python manage.py createsuperuser
- 运行开发服务器。
python manage.py runserver
如何使用Docker设置Django Ledger用于开发
-
导航到您的项目目录。
-
给entrypoint.sh添加可执行权限
sudo chmod +x entrypoint.sh
-
在settings.py的ALLOWED_HOSTS中添加主机'0.0.0.0'。
-
构建镜像并运行容器。
docker compose up --build
- 在单独的终端中运行以下命令添加Django超级用户
docker ps
选择正在运行的容器ID并执行以下命令
docker exec -it containerId /bin/sh
python manage.py createsuperuser
- 在浏览器中导航到http://0.0.0.0:8000/。
运行测试套件
设置好开发环境后,您可以运行测试。
python manage.py test django_ledger
截图
财务报表截图