%global _empty_manifest_terminate_build 0 Name: python-djmyframework Version: 0.1.41 Release: 1 Summary: django myframework License: MIT License URL: https://github.com/xzregg/dj_myframework.git Source0: https://mirrors.nju.edu.cn/pypi/web/packages/92/6b/1b16d7668c506bf1301be8885e56ce74d2fcc969455124f396dd0d2a836c/djmyframework-0.1.41.tar.gz BuildArch: noarch Requires: python3-2to3 Requires: python3-celery Requires: python3-Django Requires: python3-django-debug-toolbar Requires: python3-django-extensions Requires: python3-django-filter Requires: python3-djangorestframework Requires: python3-drf-dynamic-fields Requires: python3-drf-yasg Requires: python3-Faker Requires: python3-arrow Requires: python3-gunicorn Requires: python3-Jinja2 Requires: python3-Mako Requires: python3-Markdown Requires: python3-Pillow Requires: python3-protobuf Requires: python3-PyMySQL Requires: python3-PyYAML Requires: python3-redis Requires: python3-requests Requires: python3-sqlparse Requires: python3-supervisor Requires: python3-supervisor-multiprocesslogging Requires: python3-vthread Requires: python3-rsa Requires: python3-objectdict Requires: python3-pypinyin Requires: python3-addict Requires: python3-furl Requires: python3-xlrd Requires: python3-uvicorn[standard] Requires: python3-channels Requires: python3-channels-redis Requires: python3-django-redis Requires: python3-sqlalchemy Requires: python3-ldaptor Requires: python3-django-celery-results Requires: python3-django-celery-beat Requires: python3-django-user-agents Requires: python3-ldap Requires: python3-etcd3 Requires: python3-pycryptodome Requires: python3-uvloop Requires: python3-decouple Requires: python3-django-timezone-field Requires: python3-djangorestframework-recursive Requires: python3-addict Requires: python3-django-mptt Requires: python3-django-log-request-id Requires: python3-raven Requires: python3-xlsxwriter %description [![PyPI version](https://badge.fury.io/py/djmyframework.svg)](https://badge.fury.io/py/djmyframework) ## 通用后台框架 3.7 ### 特性 - 在settings 配置INSTALL_APPS即可. - 无需配置urls,文件,约定大于配置. - 功能按apps目录分离. - 前后端分离,后端只返回json - 快速生成CURD模型 - 多国语言 - python manage.py makemessages -i venv -l en - python manage.py compilemessages -l en > 不要使用 django-admin ,会把 venv 带进去 - 支持OpenApi 自动生成文档,客户端 - python manage.py generate_swagger -f json -o static/api.json - 使用 idea OpenAPI Generator 插件生成客户端,On an OpenAPI Definition JSON or YAML file: Code -> OpenAPI -> Generate from document - 使用 jinja2 模板引擎 #### 放弃rest ,不适合业务 - status_code 不够使用 - 地址/xx/{id} 形式,容易产生缓存,不容易测试,批量删除与修改不方便 - rest_framework 默认是使用csrf_exempt - 只使用 post ,get 方法 ### 设置apps目录 ```bash pycharm -> project structure -> 设置apps目录为source ``` ### 新建表结构 ```bash python3 manage.py migrate ``` ## 前端使用库 - jquery https://jquery.com/ - 表单 jquery.form http://malsup.com/jquery/form/ - ui 框架 bootstrap-3 https://v3.bootcss.com/ - Bootstrap Tags Input http://bootstrap-tagsinput.github.io/bootstrap-tagsinput/examples/ - 弹出框 dialog http://demo.jb51.net/js/2011/artDialog/_doc/API.html - 表格 bootstrap-table https://examples.bootstrap-table.com/index.html?bootstrap3#view-source - 选择框 select2 https://select2.org/ - 日期框 daterangepicker https://www.daterangepicker.cn/ - progress.js https://usablica.github.io/progress.js/ - vue 2.6 https://vuejs.org/ - ant design vue https://www.antdv.com/docs/vue/introduce-cn/ ## redoc - 使用 swagger_auto_schema 添加注释文档 - query_serializer 查询参数 get/post 使用 - request_body 请求主体 post 用 - responses 返回 - 生成 json/yaml 文件 ``` python manage.py generate_swagger -f yaml - >static/yaml.json ``` - OpenAPI Generator 自动生成客户端文件 pycharm 插件 code -> OpenApi ### 需要解决 - 统一用 swagger_auto_schema 添加api文档注释,并且增加参数校验 - 侵入度低,使用 __annotations__ 辅助 - 返回response 统一带 code 参数有,需要统一增加,返回错误代码,也许动态增加,建议不使用动态生成rsp - 请求 body ,query, 需要添加filter,page_size 参数 ## 快速上手 开发流程 #### 创建 app 1. 与 django 命令相同,不过默认使用 framework 下的 app 模板 ```bash pip3 install djmyframework mkdir xxxProject cd xxxProject djmyframework_init python3 manage.py create_app xxxApp python3 manage.py migrate python3 manage.py create_root python3 manage.py create_role python3 manage.py create_menu -m config.system_menu ``` #### 创建增删改查 1. 定义好 models 后, 执行自动创建 view,template 模板 ```bash python3 manage.py create_curd {app_name}.{Model} ``` #### 部署 - 安装依赖 ``` pip install -r requirements.txt -i https://mirrors.aliyun.com/pypi/simple/ ``` - 静态文件部署 ``` python manage.py collectstatic ``` - 启动服务 参看 supervisorctl 用法 ``` mysupervisorctl start ``` %package -n python3-djmyframework Summary: django myframework Provides: python-djmyframework BuildRequires: python3-devel BuildRequires: python3-setuptools BuildRequires: python3-pip %description -n python3-djmyframework [![PyPI version](https://badge.fury.io/py/djmyframework.svg)](https://badge.fury.io/py/djmyframework) ## 通用后台框架 3.7 ### 特性 - 在settings 配置INSTALL_APPS即可. - 无需配置urls,文件,约定大于配置. - 功能按apps目录分离. - 前后端分离,后端只返回json - 快速生成CURD模型 - 多国语言 - python manage.py makemessages -i venv -l en - python manage.py compilemessages -l en > 不要使用 django-admin ,会把 venv 带进去 - 支持OpenApi 自动生成文档,客户端 - python manage.py generate_swagger -f json -o static/api.json - 使用 idea OpenAPI Generator 插件生成客户端,On an OpenAPI Definition JSON or YAML file: Code -> OpenAPI -> Generate from document - 使用 jinja2 模板引擎 #### 放弃rest ,不适合业务 - status_code 不够使用 - 地址/xx/{id} 形式,容易产生缓存,不容易测试,批量删除与修改不方便 - rest_framework 默认是使用csrf_exempt - 只使用 post ,get 方法 ### 设置apps目录 ```bash pycharm -> project structure -> 设置apps目录为source ``` ### 新建表结构 ```bash python3 manage.py migrate ``` ## 前端使用库 - jquery https://jquery.com/ - 表单 jquery.form http://malsup.com/jquery/form/ - ui 框架 bootstrap-3 https://v3.bootcss.com/ - Bootstrap Tags Input http://bootstrap-tagsinput.github.io/bootstrap-tagsinput/examples/ - 弹出框 dialog http://demo.jb51.net/js/2011/artDialog/_doc/API.html - 表格 bootstrap-table https://examples.bootstrap-table.com/index.html?bootstrap3#view-source - 选择框 select2 https://select2.org/ - 日期框 daterangepicker https://www.daterangepicker.cn/ - progress.js https://usablica.github.io/progress.js/ - vue 2.6 https://vuejs.org/ - ant design vue https://www.antdv.com/docs/vue/introduce-cn/ ## redoc - 使用 swagger_auto_schema 添加注释文档 - query_serializer 查询参数 get/post 使用 - request_body 请求主体 post 用 - responses 返回 - 生成 json/yaml 文件 ``` python manage.py generate_swagger -f yaml - >static/yaml.json ``` - OpenAPI Generator 自动生成客户端文件 pycharm 插件 code -> OpenApi ### 需要解决 - 统一用 swagger_auto_schema 添加api文档注释,并且增加参数校验 - 侵入度低,使用 __annotations__ 辅助 - 返回response 统一带 code 参数有,需要统一增加,返回错误代码,也许动态增加,建议不使用动态生成rsp - 请求 body ,query, 需要添加filter,page_size 参数 ## 快速上手 开发流程 #### 创建 app 1. 与 django 命令相同,不过默认使用 framework 下的 app 模板 ```bash pip3 install djmyframework mkdir xxxProject cd xxxProject djmyframework_init python3 manage.py create_app xxxApp python3 manage.py migrate python3 manage.py create_root python3 manage.py create_role python3 manage.py create_menu -m config.system_menu ``` #### 创建增删改查 1. 定义好 models 后, 执行自动创建 view,template 模板 ```bash python3 manage.py create_curd {app_name}.{Model} ``` #### 部署 - 安装依赖 ``` pip install -r requirements.txt -i https://mirrors.aliyun.com/pypi/simple/ ``` - 静态文件部署 ``` python manage.py collectstatic ``` - 启动服务 参看 supervisorctl 用法 ``` mysupervisorctl start ``` %package help Summary: Development documents and examples for djmyframework Provides: python3-djmyframework-doc %description help [![PyPI version](https://badge.fury.io/py/djmyframework.svg)](https://badge.fury.io/py/djmyframework) ## 通用后台框架 3.7 ### 特性 - 在settings 配置INSTALL_APPS即可. - 无需配置urls,文件,约定大于配置. - 功能按apps目录分离. - 前后端分离,后端只返回json - 快速生成CURD模型 - 多国语言 - python manage.py makemessages -i venv -l en - python manage.py compilemessages -l en > 不要使用 django-admin ,会把 venv 带进去 - 支持OpenApi 自动生成文档,客户端 - python manage.py generate_swagger -f json -o static/api.json - 使用 idea OpenAPI Generator 插件生成客户端,On an OpenAPI Definition JSON or YAML file: Code -> OpenAPI -> Generate from document - 使用 jinja2 模板引擎 #### 放弃rest ,不适合业务 - status_code 不够使用 - 地址/xx/{id} 形式,容易产生缓存,不容易测试,批量删除与修改不方便 - rest_framework 默认是使用csrf_exempt - 只使用 post ,get 方法 ### 设置apps目录 ```bash pycharm -> project structure -> 设置apps目录为source ``` ### 新建表结构 ```bash python3 manage.py migrate ``` ## 前端使用库 - jquery https://jquery.com/ - 表单 jquery.form http://malsup.com/jquery/form/ - ui 框架 bootstrap-3 https://v3.bootcss.com/ - Bootstrap Tags Input http://bootstrap-tagsinput.github.io/bootstrap-tagsinput/examples/ - 弹出框 dialog http://demo.jb51.net/js/2011/artDialog/_doc/API.html - 表格 bootstrap-table https://examples.bootstrap-table.com/index.html?bootstrap3#view-source - 选择框 select2 https://select2.org/ - 日期框 daterangepicker https://www.daterangepicker.cn/ - progress.js https://usablica.github.io/progress.js/ - vue 2.6 https://vuejs.org/ - ant design vue https://www.antdv.com/docs/vue/introduce-cn/ ## redoc - 使用 swagger_auto_schema 添加注释文档 - query_serializer 查询参数 get/post 使用 - request_body 请求主体 post 用 - responses 返回 - 生成 json/yaml 文件 ``` python manage.py generate_swagger -f yaml - >static/yaml.json ``` - OpenAPI Generator 自动生成客户端文件 pycharm 插件 code -> OpenApi ### 需要解决 - 统一用 swagger_auto_schema 添加api文档注释,并且增加参数校验 - 侵入度低,使用 __annotations__ 辅助 - 返回response 统一带 code 参数有,需要统一增加,返回错误代码,也许动态增加,建议不使用动态生成rsp - 请求 body ,query, 需要添加filter,page_size 参数 ## 快速上手 开发流程 #### 创建 app 1. 与 django 命令相同,不过默认使用 framework 下的 app 模板 ```bash pip3 install djmyframework mkdir xxxProject cd xxxProject djmyframework_init python3 manage.py create_app xxxApp python3 manage.py migrate python3 manage.py create_root python3 manage.py create_role python3 manage.py create_menu -m config.system_menu ``` #### 创建增删改查 1. 定义好 models 后, 执行自动创建 view,template 模板 ```bash python3 manage.py create_curd {app_name}.{Model} ``` #### 部署 - 安装依赖 ``` pip install -r requirements.txt -i https://mirrors.aliyun.com/pypi/simple/ ``` - 静态文件部署 ``` python manage.py collectstatic ``` - 启动服务 参看 supervisorctl 用法 ``` mysupervisorctl start ``` %prep %autosetup -n djmyframework-0.1.41 %build %py3_build %install %py3_install install -d -m755 %{buildroot}/%{_pkgdocdir} if [ -d doc ]; then cp -arf doc %{buildroot}/%{_pkgdocdir}; fi if [ -d docs ]; then cp -arf docs %{buildroot}/%{_pkgdocdir}; fi if [ -d example ]; then cp -arf example %{buildroot}/%{_pkgdocdir}; fi if [ -d examples ]; then cp -arf examples %{buildroot}/%{_pkgdocdir}; fi pushd %{buildroot} if [ -d usr/lib ]; then find usr/lib -type f -printf "/%h/%f\n" >> filelist.lst fi if [ -d usr/lib64 ]; then find usr/lib64 -type f -printf "/%h/%f\n" >> filelist.lst fi if [ -d usr/bin ]; then find usr/bin -type f -printf "/%h/%f\n" >> filelist.lst fi if [ -d usr/sbin ]; then find usr/sbin -type f -printf "/%h/%f\n" >> filelist.lst fi touch doclist.lst if [ -d usr/share/man ]; then find usr/share/man -type f -printf "/%h/%f.gz\n" >> doclist.lst fi popd mv %{buildroot}/filelist.lst . mv %{buildroot}/doclist.lst . %files -n python3-djmyframework -f filelist.lst %dir %{python3_sitelib}/* %files help -f doclist.lst %{_docdir}/* %changelog * Thu May 18 2023 Python_Bot - 0.1.41-1 - Package Spec generated