无意之间发现个django的后台管理框架,仔细与xadmin对比了一下,无论是功能上还是便携性上都与xadmin特别相似,但个人感觉Tyadmin略胜一筹,因为外观上要比xadmin要美观,而且相比起来速度也快,部署甚至也和简单,最重要的是它号称0代码实现后台管理系统,当然如果进行二次开发的话不可能是0代码。那么简单来介绍一下它:
自动生成前后端管理后台,页面接口神奇全自动对接
增删改查,筛选,搜索,数据全量导出,选择导出
外键字段,多对多字段,富文本,文件,图片,django自带权限系统
由Django Restful Framework 和 Ant Design Pro V4 驱动
那么…感受一下吧!!
注册
pip3 install tyadmin-api-cli
在django项目中的setting中配置以下
INSTALLED_APPS = [
'captcha',
'tyadmin_api_cli',
]
#GEN_APPS: 填写你想要生成的app列表
TY_ADMIN_CONFIG = {
'GEN_APPS': ['luwei']
}
初始化
初始化 后端app(tyadmin_api) + 前端项目(tyadmin) && 生成后端自动化的视图,过滤器,路由,序列器 + 前端页面及路由菜单
生成后端页面依赖,需安装Node.js -> https://www.runoob.com/nodejs/nodejs-install-setup.html
python3 manage.py init_admin && python3 manage.py gen_all && cd tyadmin && npm install && npm run build
此时生成出一个叫做tyadmin_api的app 注册它
INSTALLED_APPS = [
'captcha',
'tyadmin_api_cli',
'tyadmin_api'
]
注册首页路由
from django.urls import path,re_path,include
from tyadmin_api.views import AdminIndexView
urlpatterns = [
re_path('^xadmin/.*', AdminIndexView.as_view()),
path('api/xadmin/v1/', include('tyadmin_api.urls')),
]
创建django的子app
python3 manage.py startapp luwei
INSTALLED_APPS = [
'captcha',
'tyadmin_api_cli',
'tyadmin_api',
'luwei'
]
TEMPLATES = [
{
'BACKEND': 'django.template.backends.django.DjangoTemplates',
'DIRS': [os.path.join(BASE_DIR, 'templates')],
'APP_DIRS': True,
'OPTIONS': {
'context_processors': [
'django.template.context_processors.debug',
'django.template.context_processors.request',
'django.contrib.auth.context_processors.auth',
'django.contrib.messages.context_processors.messages',
],
},
},
]
if DEBUG:
STATICFILES_DIRS = [
os.path.join(BASE_DIR, "static"),
]
else:
STATIC_ROOT = os.path.join(BASE_DIR, 'static')
运行
python3 manage.py makemigrations
python3 manage.py migrate
python3 manage.py createsuperuser # 创建一个可以登入后台的用户
python3 manage.py runserver # 默认运行在8000端口
访问http://127.0.0.1:8000/xadmin/ 输入刚才创建的用户名密码登录
注意事项
如果图片不显示
# urls.py
from django.views.static import serve
urlpatterns = [
re_path('media/(?P<path>.*)', serve, {"document_root": settings.MEDIA_ROOT}),
]
如果新增了app与app内的model怎么生成页面与接口
TY_ADMIN_CONFIG = {
'GEN_APPS': ['luwei','luwei2']
}
python3 manage.py gen_all && cd tyadmin && npm run build
还可以单独生成前端独立项目文章来源:https://www.toymoban.com/news/detail-627144.html
cd tyadmin
npm install
npm run start:dev # 默认8001端口
启动前端之前先启动后端项目运行在8000端口,访问 http://127.0.0.1:8001/xadmin/
文章来源地址https://www.toymoban.com/news/detail-627144.html
model->前端对应关系
字段类型 | 前端展示 |
---|---|
ForeignKey | 单选 |
ManyToManyField | 多选 & 多彩标签展示 |
richTextField | 富文本展示 |
CharField or IntegerField(with choices) | 多选 |
CharField or IntegerField | 输入框 |
ImageField | 带预览上传,可选头像,图片列表展示 |
FileField | 文件上传 |
TextField | TextArea框 |
BooleanField | Switch选择 |
IntegerField | 数字input |
DateField | Date选择器 |
DateTimeField | DateTime选择器 |
到了这里,关于django后台系统Tyadmin的文章就介绍完了。如果您还想了解更多内容,请在右上角搜索TOY模板网以前的文章或继续浏览下面的相关文章,希望大家以后多多支持TOY模板网!