@@ -0,0 +1,4 @@
|
||||
Django=1.10.6
|
||||
PyMySQL=0.7.9
|
||||
xlwt=1.0.0
|
||||
xlrd=1.2.0
|
||||
@@ -0,0 +1,65 @@
|
||||
# Django-ERP
|
||||
Django-ERP是一款基于Django开发的ERP管理软件,包含常用的销售管理、采购管理、库存管理、组织管理等,支持按项目归集费用,支持工作流审批,支持采购单、报价单的批量导入。
|
||||
|
||||
Forked from <a href="https://github.com/zhuinfo/Django-ERP">zhuinfo Django-ERP</a> 感谢他的付出。
|
||||
|
||||
# 安装指南
|
||||
|
||||
> 我的开发、测试环境是Python2.7的,所以这个文档大多数情况我默认会使用这个条件,有个别测试不到位的可能还需要慢慢完善。
|
||||
|
||||
请先确保您已安装了Python 2.7,并已配置好了数据库,本文档会略过这部分内容(理论上Django是可以支持MYSql、PGSQL、SQLite、Oracle等主流数据库的,但是建议不要嘬,用自己熟悉的数据库,因为数据是无价的。)
|
||||
验证方法请通过python --version查看版本,以及数据库 确认用户名和密码是否登录正常
|
||||
|
||||
后续我争取不上requirements.txt,远期目标我个人是希望能做个dock镜像,并让它能慢慢顺着Python3和新版本的django平滑过渡上去。
|
||||
|
||||
## 数据库配置
|
||||
|
||||
数据库配置项在mis/settings.py文件中
|
||||
在88-96行为Mysql数据库配置
|
||||
|
||||
```
|
||||
DATABASES = {
|
||||
'default': {
|
||||
'ENGINE': 'django.db.backends.mysql',#MYSQL类型数据库,Python会依赖MySQL的驱动器
|
||||
'HOST': 'localhost',#数据库主机地址
|
||||
'NAME': 'mis',#数据库名称
|
||||
'USER': 'root',#数据库用户名(建议不要加入root敢死队)
|
||||
'PASSWORD': 'root',#数据库密码
|
||||
}
|
||||
}
|
||||
```
|
||||
|
||||
|
||||
## 克隆代码
|
||||
> git clone https://github.com/bg4hkq/Django-ERP.git
|
||||
|
||||
|
||||
## 导入数据库
|
||||
> mysql -uroot -proot mis < Install/mis.sql
|
||||
|
||||
## 运行测试服务器
|
||||
> python manage.py runserver
|
||||
|
||||
## 修改管理员账户密码
|
||||
```
|
||||
C:\Django-ERP>python manage.py changepassword admin
|
||||
|
||||
You have 3 unapplied migration(s). Your project may not work properly until you apply the migrations for app(s): admin, auth.
|
||||
Run 'python manage.py migrate' to apply them.
|
||||
Changing password for user 'admin'
|
||||
Password:
|
||||
Password (again):
|
||||
Password changed successfully for user 'admin'
|
||||
|
||||
C:\Django-ERP>
|
||||
```
|
||||
|
||||
# 排错
|
||||
|
||||
## MYSQL驱动错误
|
||||
```
|
||||
django.core.exceptions.ImproperlyConfigured: Error loading MySQLdb module: No module named MySQLdb
|
||||
```
|
||||
|
||||
出现No module named MySQLdb是django找不到MySQL驱动导致的问题,所以需要先安装一个数据库驱动。
|
||||
|
||||
+1
-1
@@ -4,7 +4,7 @@ from django.forms import models
|
||||
from django.forms import fields,TextInput,Textarea
|
||||
from django.contrib import messages
|
||||
from django.utils.translation import ugettext_lazy as _
|
||||
from django.contrib.contenttypes.generic import GenericTabularInline
|
||||
from django.contrib.contenttypes.admin import GenericTabularInline
|
||||
from common import generic
|
||||
from basedata.models import ValueList,ValueListItem,Address,Partner,BankAccount,Project,Measure,Material,Brand,\
|
||||
Category,Warehouse,TechnicalParameterName,TechnicalParameterValue,Trade,ExpenseAccount,Employee,Family,Education,\
|
||||
|
||||
+1
-1
@@ -2,5 +2,5 @@ from django.conf.urls import include, url,static
|
||||
import basedata.views
|
||||
|
||||
urlpatterns = [
|
||||
url(r"dataimport/(?P<object_id>\d+)/action", 'basedata.views.action_import'),
|
||||
url(r"dataimport/(?P<object_id>\d+)/action", basedata.views.action_import),
|
||||
]
|
||||
|
||||
+5
-5
@@ -2,9 +2,9 @@ from django.conf.urls import include, url,static
|
||||
import invent.views
|
||||
|
||||
urlpatterns = [
|
||||
url(r"stockin/(?P<object_id>\d+)/cin", 'invent.views.action_in'),
|
||||
url(r"initialinventory/(?P<object_id>\d+)/cin", 'invent.views.action_init'),
|
||||
url(r"stockout/(?P<object_id>\d+)/out", 'invent.views.action_out'),
|
||||
url(r"warereturn/(?P<object_id>\d+)/cin", 'invent.views.action_return'),
|
||||
url(r"wareadjust/(?P<object_id>\d+)/adjust", 'invent.views.action_adjust'),
|
||||
url(r"stockin/(?P<object_id>\d+)/cin", invent.views.action_in),
|
||||
url(r"initialinventory/(?P<object_id>\d+)/cin", invent.views.action_init),
|
||||
url(r"stockout/(?P<object_id>\d+)/out", invent.views.action_out),
|
||||
url(r"warereturn/(?P<object_id>\d+)/cin", invent.views.action_return),
|
||||
url(r"wareadjust/(?P<object_id>\d+)/adjust", invent.views.action_adjust),
|
||||
]
|
||||
|
||||
@@ -1,3 +1,8 @@
|
||||
#! /usr/bin/env python
|
||||
# -*- coding: utf-8 -*-
|
||||
import pymysql
|
||||
pymysql.install_as_MySQLdb()
|
||||
#解决mysql-python的历史遗留问题(Yuri_2017-04-29)
|
||||
from django.contrib import admin
|
||||
|
||||
admin.site.site_header = 'Django-ERP'
|
||||
|
||||
+7
-9
@@ -1,19 +1,17 @@
|
||||
from django.conf.urls import include, url,static
|
||||
from django.conf.urls import include, url, static
|
||||
from django.contrib import admin
|
||||
from mis import settings
|
||||
import workflow
|
||||
import workflow.views
|
||||
import invent.urls
|
||||
import basedata.urls
|
||||
import selfhelp.urls
|
||||
import mis
|
||||
import mis.views
|
||||
|
||||
urlpatterns = [
|
||||
# Examples:
|
||||
url(r'^$', 'mis.views.home'),
|
||||
# url(r'^blog/', include('blog.urls')),
|
||||
url(r"^admin/(?P<app>\w+)/(?P<model>\w+)/(?P<object_id>\d+)/start",'workflow.views.start'),
|
||||
url(r"^admin/(?P<app>\w+)/(?P<model>\w+)/(?P<object_id>\d+)/approve/(?P<operation>\d+)",'workflow.views.approve'),
|
||||
url(r"^admin/(?P<app>\w+)/(?P<model>\w+)/(?P<object_id>\d+)/restart/(?P<instance>\d+)",'workflow.views.restart'),
|
||||
url(r'^$', mis.views.home),
|
||||
url(r"^admin/(?P<app>\w+)/(?P<model>\w+)/(?P<object_id>\d+)/start", workflow.views.start),
|
||||
url(r"^admin/(?P<app>\w+)/(?P<model>\w+)/(?P<object_id>\d+)/approve/(?P<operation>\d+)", workflow.views.approve),
|
||||
url(r"^admin/(?P<app>\w+)/(?P<model>\w+)/(?P<object_id>\d+)/restart/(?P<instance>\d+)", workflow.views.restart),
|
||||
url(r'^admin/', include(admin.site.urls)),
|
||||
url(r'^admin/invent/', include(invent.urls)),
|
||||
url(r'^admin/basedata/', include(basedata.urls)),
|
||||
|
||||
+1
-1
@@ -2,5 +2,5 @@ from django.conf.urls import include, url,static
|
||||
import selfhelp.views
|
||||
|
||||
urlpatterns = [
|
||||
url(r"(?P<model>\w+)/(?P<object_id>\d+)/pay", 'selfhelp.views.pay_action'),
|
||||
url(r"(?P<model>\w+)/(?P<object_id>\d+)/pay", selfhelp.views.pay_action),
|
||||
]
|
||||
|
||||
Reference in New Issue
Block a user