描述
通过一个在 iRedMail-IMP / iRedAdmin 间接管理平台配置 iRedMail 相关信息及管理员帐号,iRedMail-IMP 间接通过管理员帐号登录 iRedAdmin 后台,从而实现管理帐号。本项目未实现与 iRedAdmin 开源版后台一样的功能。 目前只实现了 创建/修改/删除/禁用/搜索 帐号等基础功能。
Github
https://github.com/Shankschn/iRedMail-IMP
适用于
iRedMail 0.9.9
环境
Python 3.7
依赖包
pip install django==2.2.*
pip install django-simpleui==2020.7 # 安装之前的老版本,新版本由于 Django 3 与 2 语法不同,会报错。
pip install django-import-export
pip install beautifulsoup4
pip install mysqlclient # 若使用 MySql 或 MariaDB 需安装,默认使用 SQLite3 数据库。
使用
在 iRedAdmin 管理及设置中,配置"域","管理员账号","管理员密码","特殊电子邮箱"等基础信息后,即可使用。
MySQL / MariaDB
若使用 MySQL / MariaDB,需在 settings.py 中修改数据库设置,注释 SQLite 3 数据库配置,并设置 MySQL / MariaDB 数据库。
# 注释
# DATABASES = {
# 'default': {
# 'ENGINE': 'django.db.backends.sqlite3',
# 'NAME': os.path.join(BASE_DIR, 'db.sqlite3'),
# }
# }
# 取消注释并修改
DATABASES = {
'default': {
'ENGINE': 'django.db.backends.mysql', # 或者使用 mysql.connector.django
'NAME': 'iredmailimp', # 数据库
'USER': 'iredmailimp', # 用户
'PASSWORD': 'iredmailimp', # 密码
'HOST': '127.0.0.1', # IP
'PORT': '3306', # 端口
}
}
创建数据库及结构
python manage.py makemigrations
python manage.py migrate
创建超级用户
python manage.py createsuperuser
运行服务
python manage.py runserver
求助大佬,添加用户报错,请问这是什么原因呢?
TypeError at /admin/api/iredadminuser/add/
'int' object is not callable
Request Method: POST
Request URL: http://192.168.1.124:8000/admin/api/iredadminuser/add/
Django Version: 2.2.24
Exception Type: TypeError
Exception Value:
'int' object is not callable
Exception Location: /www/iRedMail-IMP-main/api/admin.py in save_model, line 226
Python Executable: /usr/bin/python
Python Version: 3.7.6
Python Path:
['/www/iRedMail-IMP-main',
'/usr/local/lib/python37.zip',
'/usr/local/lib/python3.7',
'/usr/local/lib/python3.7/lib-dynload',
'/usr/local/lib/python3.7/site-packages',
'/usr/local/lib/python3.7/site-packages/odf',
好象是 messages.error 打成 messages.ERROR 了。你改下试试。
谢谢大佬,您说的是对的,我改了就好了,现在又出现一个问题,我百度了许久也未能解决,AttributeError at /admin/api/iredadminuser/add/
'NoneType' object has no attribute 'groups'
Request Method: POST
Request URL: http://192.168.1.124:8000/admin/api/iredadminuser/add/
Django Version: 2.2.24
Exception Type: AttributeError
Exception Value:
'NoneType' object has no attribute 'groups'
Exception Location: /www/iRedMail-IMP-main/api/iredadmin.py in get_token, line 113
Python Executable: /usr/bin/python
这个应该是 iredadmin 版本不一样,导致 正则没有提取到 csrf_token。现在装的应该都是新版吧,可以尝试直接改正则。等周末看下。
大佬,点用户管理,不显示iredmail里的邮箱用户,是我哪里没有配置好呢?
你看下 iredadmin 里面员工编号 那个属性填写了没有,没有的话填写上,再刷新用户到本地,不然不会读取。
求教,请问这是什么原因呢?
ProgrammingError at /admin/api/iredadminuser/
(1146, "Table 'iredadmin.api_iredadminuser' doesn't exist")
Request Method: GET
Request URL: http://192.168.1.124:8000/admin/api/iredadminuser/
Django Version: 2.2.24
Exception Type: ProgrammingError
Exception Value:
(1146, "Table 'iredadmin.api_iredadminuser' doesn't exist")
Exception Location: /usr/local/lib/python3.7/site-packages/MySQLdb/connections.py in query, line 259
Python Executable: /usr/bin/python
Python Version: 3.7.6
Python Path:
['/www/iRedMail-IMP-main',
'/usr/local/lib/python37.zip',
'/usr/local/lib/python3.7',
'/usr/local/lib/python3.7/lib-dynload',
'/usr/local/lib/python3.7/site-packages',
'/usr/local/lib/python3.7/site-packages/odf',
'/usr/local/lib/python3.7/site-packages/odf',
'/usr/local/lib/python3.7/site-packages/odf',
'/usr/local/lib/python3.7/site-packages/odf',
'/usr/local/lib/python3.7/site-packages/odf',
'/usr/local/lib/python3.7/site-packages/odf',
'/usr/local/lib/python3.7/site-packages/odf']
python manage.py makemigrations api
python manage.py migrate
您好,请问有下载地址吗
https://github.com/Shankschn/iRedMail-IMP
谢谢大佬