Merge pull request #8 from bg4hkq/master

django-1.10兼容
This commit is contained in:
zhuinfo
2017-05-02 09:38:47 +08:00
committed by GitHub
9 changed files with 89 additions and 17 deletions
View File
+4
View File
@@ -0,0 +1,4 @@
Django=1.10.6
PyMySQL=0.7.9
xlwt=1.0.0
xlrd=1.2.0
+65
View File
@@ -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
View File
@@ -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
View File
@@ -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
View File
@@ -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),
]
+5
View File
@@ -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
View File
@@ -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
View File
@@ -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),
]