xadmin引入django-rest-framework
2024-08-25 21:02:38
一、安装:
pip install djangorestframework
安装djangorestframework库
https://github.com/encode/django-rest-framework/tree/master
GitHub主页
pip install markdown
安装markdown库
二、配置demo/settings.py:
INSTALLED_APPS = [
'django.contrib.admin',
'django.contrib.auth',
'django.contrib.contenttypes',
'django.contrib.sessions',
'django.contrib.messages',
'django.contrib.staticfiles',
'product.apps.ProductConfig', 'xadmin',
'crispy_forms',
'reversion',
# 添加django-xadmin 'import_export',
# 导入导出 'ckeditor',
'ckeditor_uploader',
# 富文本编辑器 'stdimage',
# django-stdimage 'rest_framework',
# django-rest-framework
]
REST_FRAMEWORK = {
'DEFAULT_PAGINATION_CLASS': 'rest_framework.pagination.PageNumberPagination',
'PAGE_SIZE': 5
# 分页
}
三、复制资源文件:
python manage.py collectstatic
拷贝静态文件
此时可看到static目录下新增了static/rest_framework目录
四、序列化:
在product目录下面新建product/serializers.py:
from rest_framework import serializers from product.models import ProductInfo class ProductInfoSerializer(serializers.HyperlinkedModelSerializer):
# 序列化 class Meta:
model = ProductInfo
fields = (
'id',
'product_name',
'product_picture',
'product_describe',
'product_manager',
'product_detail',
'create_time',
'update_time'
)
五、业务视图product/views.py:
# Create your views here.
from rest_framework import viewsets from product.models import ProductInfo
from product.serializers import ProductInfoSerializer class ProductInfoViewSet(viewsets.ModelViewSet):
queryset = ProductInfo.objects.all().order_by('id')
serializer_class = ProductInfoSerializer
六、路由demo/urls.py:
import xadmin from django.conf import settings
from django.conf.urls.static import static
from django.urls import path, include
from rest_framework import routers from product import views router = routers.DefaultRouter()
router.register('product_info', views.ProductInfoViewSet) urlpatterns = [
# path('admin/', admin.site.urls),
path('admin/', xadmin.site.urls), path('ckeditor/', include('ckeditor_uploader.urls')),
# 添加CKEditor的URL映射 path('api/', include(router.urls)),
path('api-auth/', include('rest_framework.urls', namespace='rest_framework'))
# 配置django-rest-framwork API路由
] urlpatterns += static(settings.MEDIA_URL, document_root=settings.MEDIA_ROOT)
# 配置图片文件url转发
七、API
python manage.py runserver
启动服务
最新文章
- AzCopy Upload Files
- Android -- Looper、Handler、MessageQueue等类之间关系的序列图
- 配置ogg目录索引-oracle与mysql的双向同步步骤
- javascript瀑布流布局效果
- (C#)算法题
- HBase的架构以及各个模块的功能
- css背景图片定位练习(一)
- 解决tomcat一闪而过问题
- SQL执行的原理以及一些常见的关键字
- Golang学习 - path/filepath 包
- maven小项目注册服务(一)--email和persist模块
- appsettings.json
- python 打印类的属性、方法
- 通过SVG与CSS3实现向上图标
- Solr 14 - SolrJ操作SolrCloud集群 (Solr的Java API)
- Python学习(二十六)—— Django基础一
- 使用PyQT开发图形界面程序
- redis 性能建议
- Python 进程的其他方法
- supervisor的安装和配置
热门文章
- 洛谷p2613【模板】有理数取余
- MySQL使用的几条注意事项和1449错误解决方案
- Web协议详解与抓包实战:HTTP1协议-如何用Chrome的Network面板分析HTTP报文(1)
- eclipse 设置所有文件编码为UTF-8(最全)
- 如何编写一个Systemd Service(转)
- mac os 使用 from scipy.misc import imread ImportError: cannot import name 'imread'
- 轻松装Win10:VMware Workstation 12虚拟机下载
- skywalking集群部署
- java线程锁基础
- Django学习——用户自定义models问题解决