向任何项目添加django和drf驱动的api的最简单方法

bookrest的Python项目详细描述


bookrest-将rest api添加到任意db

bookrest image

Bookrest允许您向任意数据库添加一个API(和可浏览的html)——几乎是任意的,表必须有PKs。 数据库不需要由Django管理

安装和使用
pip install bookrest

然后在你的settings.py

INSTALLED_APPS=[# ..."rest_framework","bookrest",]

向名为bookrestsettings.DATABASES添加一个键,并将其指向要作为api公开的db。保持您的defaultdb原样,您可以将其用于用户管理和其他django应用程序。

DATABASES={"default":{"ENGINE":"django.db.backends.sqlite3","NAME":os.path.join(BASE_DIR,"db.sqlite3"),},"bookrest":{"ENGINE":"django.db.backends.sqlite3","NAME":os.path.join(BASE_DIR,"data/sample.sqlite3"),},}

将您的url连接到bookrest.urls

urlpatterns=[# ...path("api/",include("bookrest.urls"))]

?砰你在做生意。所有表都将具有完整的读/写API

bookrest image

待办事项

  • [X]使用sqlite进行测试
  • [X]在Pypi上发布
  • []使用Postgres进行测试
  • []Mysql测试
  • []添加设置以启用只读API
  • []启用circleci
  • []悄悄地删除没有pk的表,而不是失败(坏主意??)

灵感来源于

这个项目的灵感来自datasette。我喜欢dataset,但是因为drf有一个geat可浏览的api,django有强大的内省功能,所以我想用django+drf来实现。

Bookrest拥有DRF-browsable API、coreapi、过滤和分页的所有功能在settings.py中设置一个REST_FRAMEWORK设置,然后bookrest将应用它

名字是什么?

您可以将bookrest放在表上,这样可以简化读取。

欢迎加入QQ群-->: 979659372 Python中文网_新手群

推荐PyPI第三方库


热门话题
java Jetty是否有请求缓存?   数组中的java 2值与我的数据帧中的2列对应   对象序列化期间的java DbUtils类型转换问题   java根面板中不显示所有单独的面板   java通过代理或SSH隧道连接Hbase API   java困惑:与经典MVC控制器相比,JSF2中bean的角色   java在我的Triangle类中“找不到符号错误”   java在Android中设置从路径到自定义按钮的图像   java不绕轨道旋转椭圆   AES在socket上搞砸了序列化/反序列化。无效的流标头。JAVA   java在数组中搜索term和if语句   线程“main”java中出现异常。util。正则表达式。PatternSyntaxException:在索引0附近悬挂元字符“*”*   Websphere上的java Google反射无法打开url连接   java为什么inc/dec频道什么都不做?   java KeyListener无法访问keyPressed方法