更强大,更现代化,自定义度更高的Xadmin!!! 自动生成前后端管理后台,神奇自动对接。免去普通增删改查,筛选,搜索功能开发。
只需要设计好Model,运行两条命令python manage.py init_admin
,python manage.py gen_all
后端代码生成一个django app到项目目录, 代码归你掌控,无阻二次开发! 前端生成一个完整的Antd design pro V4项目,代码归你掌控,无阻二次开发!
前端页面, 后端接口,路由,菜单全部自动对接。
已生成示例网站:
字段类型 | 前端展示 |
---|---|
ForeignKey | 单选 |
ManyToManyField | 多选 & 多彩标签展示 |
richTextField | 富文本展示 |
CharField or IntegerField(with choices) | 多选 |
CharField or IntegerField | 输入框 |
ImageField | 带预览上传,可选头像,图片列表展示 |
FileField | 文件上传 |
TextField | TextArea框 |
BooleanField | Switch选择 |
IntegerField | 数字input |
DateField | Date选择器 |
DateTimeField | DateTime选择器 |
指定
f'{MAIN_DISPLAY}__name'
关联另一张表哪个字段用于table显示
course_org = ForeignKey(CourseOrg, verbose_name="所属机构",
help_text=f'{MAIN_DISPLAY}__name')
labels = ManyToManyField("Label", verbose_name="课程拥有的label",
help_text=f'{MAIN_DISPLAY}__title')
detail = richTextField(verbose_name="课程详情")
GENDER_CHOICES = (
("male", "男"),
("female", "女")
)
gender = CharField(verbose_name="性别",choices=GENDER_CHOICES)
avatar = ImageField(verbose_name="头像", help_text=MAIN_AVATAR)
image = ImageField(verbose_name="封面图", help_text=MAIN_PIC)
头像样式 MAIN_AVATAR
:
图片样式 MAIN_PIC
:
download = FileField(verbose_name="资源文件", max_length=100)
desc = TextField(verbose_name="课程描述")
is_banner = BooleanField(verbose_name="是否轮播")
learn_times = IntegerField(verbose_name="学习时长(分钟数)")
birthday = DateField(verbose_name="生日")
last_login = DateTimeField(verbose_name="上次登录")
注意设置了default,auto_now的不会出现在表单
title = CharField(max_length=255, verbose_name="课程标题", unique=True)
if xxx:
raise ValidationError({"filed_name": ["错误提示"]})
cookiecutter https://github.com/mtianyan/cookiecutter-tyadmin-demo.git
pip install tyadmin-api-cli
INSTALLED_APPS = [
'tyadmin_api_cli',
]
python manage.py init_admin
python manage.py gen_all
INSTALLED_APPS = [
'tyadmin_api_cli',
'captcha',
'tyadmin_api'
]
path('api/xadmin/v1/', include('tyadmin_api.urls')),
python manage.py makemigrations
python manage.py migrate
python manage.py runserver
cd tyadmin
yarn
yarn start