首页
学习
活动
专区
圈层
工具
发布

使用 strapi 快速构建 API 和 CMS 管理系统

的版本为 v6,如果需要使用到 SQLite 作为数据库的话,还需要在自己的电脑上安装 Python。...--ts 如果一切顺利,创建好工程之后,将会自动进行依赖的安装,并且安装之后会自动运行,我们可以在终端当中看到如下的提示: 自动打开浏览器之后,可以看到下面的页面,提示我们创建一个超级管理员的身份,...快速开发一套 CRUD 接口 创建模型 这里我就拿项目当中最常用的用户管理来说,首先我们需要一个用户表,点击 模型构建器,可以看到已经有一个 User 的集合类型,这个是 strapi 自己提供的,我们当前登录的用户的数据就存储在这个模型当中...,但是这个不是我们所需要的,新增一个集合类型 UserProfile,注意高级设置当中的 Draft & publish 根据实际需要进行勾选,勾选之后新增加的数据需要手动进行发布才能生效,这里我就取消勾选了...strapi 是在 koa 的基础上开发来的,我们可以通过设置,实现自己的业务逻辑,下面就用一个用户注册的接口来介绍一下使用 strapi 编写自定义业务逻辑的接口。

15.3K44

GraphQL 实践与服务搭建

可如今现状是 GraphQL 不温不火,时不时又有新的文章介绍,不知道的还以为是什么新技术。...快速生成 GraphQL 模块​ nest 提供 cli 的方式来快速生成 GraphQL 模块 nest g resource 比如创建一个 blog 模块 nest g resource...来说,搭建 GraphQL 服务基本没有配置的负担,安装一个插件,即可配合 Strapi 的 content-type 来提供 GraphQL 服务。...我不过我猜测,主要还是大多数业务没有 API 架构的升级的需求,原有的 Restful API 虽说不够优雅,但是也能够满足业务的需求,反而 GraphQL 是一个新项目 API 架构的选择,但不是一个必须的选择...我的建议是了解即可,新项目可以考虑使用,就别想着用 GraphQL 来重构原有的 API 接口,工作量将会十分巨大,并且还可能是费力不讨好的事。

6.3K10
  • 您找到你想要的搜索结果了吗?
    是的
    没有找到

    MassCMS VS Strapi比较

    Strapi是一个开源的无头CMS Strapi 是一个无头 CMS,用于开发网站、移动应用程序、电子商务网站和 API。它允许在不了解后端或数据库的情况下创建 API。...灵活性和可定制性 Strapi 提供了一个灵活的框架,允许开发人员根据不同项目的需求进行定制和扩展。它支持自定义数据结构、字段类型和关系,并且允许开发人员使用自己喜欢的编程语言进行扩展。...REST & GraphQL API支持 Strapi 内置了一个强大的 RESTful API,开发人员可以使用它来创建和管理数据。...这个 API 还具有安全性和权限控制功能,可以确保只有授权的用户才能访问和修改数据。 强大的数据管理 Strapi 提供了一个直观的管理界面,可以轻松地创建、编辑和管理数据模型和关系。...前后端完全分离的做法,无法有效的管理前端,当新的需求发生,需要创建新的内容块的时候,需要重新构建展示渠道,这意味着无法打造个性化的体验。

    1.7K31

    2022 年10个优质的 Node.js CMS 平台分享

    接下来就来介绍一下 「2022」 年比较活跃的 「CMS」。 1. Strapi 「Strapi」 是一种流行、灵活且开源的无头 「CMS」,使我们能够创建丰富的数字体验。...我们可以通过其可调整的设置和管理面板自定义 「Strapi」 以满足我们的需求。我们还可以通过安装社区开发的插件来扩展 「Strapi」 的功能。...「Butter」 将媒体管理提升到一个新的水平。除了存储和优化图像,「Butter」 还提供了一个内置的图像编辑器,我们可以使用它来转换、裁剪、调整大小、应用过滤器等等。...「Prismic」 有一个功能,内容切片,我们可以用它来将我们网站的页面分成不同的部分。我们可以使用内容切片来创建可重用的自定义组件,并为登陆页面、微型网站、案例研究和推荐构建动态布局。...特点 GraphQL API 自定义响应组件 灵活的关系 强大的过滤功能 数据库迁移 网址: https://keystonejs.com/ 9.

    5.3K20

    Strapi 实现用户注册与登录

    Admin 是我自己创建的角色,用于分配管理员的权限。...通俗点说就是数据库系统的用户与后台管理系统用户的区别。...Nuxt2 可看这里 通过相应的 hooks 就可以实现登录注册以及数据增删改查的功能,演示例子可看 Usage 这里有一份我创建的预设模板 kuizuo/vitesse-nuxt3-strapi,一开始的示例也是基于这个模板来搭建的...备注 原本我考虑的是使用 starter 方式来创建nuxt3 strapi项目,但是就在我创建完 starter 与 template 准备使用 yarn create strapi-starter...不过 Strapi 官方有提供 sdk的方案来调用 strapi 服务,而不用发送 http 请求的形式来调用,具体可以到官方提供的 sdk 查看如何使用,这里不做演示。

    4.6K30

    企业级CMS对比,MassCMS,Strapi,AEM Sites,Magnolia CMS

    MassCMS介绍MassCMS是一个面向企业的数字化内容管理系统。可以帮助企业创建、管理和发布以客户体验为中心的内容。...MassCMS功能架构图Strapi介绍Strapi 是一个无头 CMS,用于开发网站、移动应用程序、电子商务网站和 API。它允许在不了解后端或数据库的情况下创建 API。...Strapi CMS 是一个免费的开源无头 CMS,它使用 API 将前端链接到 Strapi 的后端,这是一个开源和免费使用的产品,对于熟悉nodejs的人来说,它易于学习和使用。...无头 CMS 策略可以轻松启动和运行新的新建项目。开发人员切出块并使用 API 连接一切。Strapi 通过集成的管理面板和开箱即用的一组可靠的核心功能来节省 API 开发时间。...而且,通过内容片段功能,可跨区域站点创建和重用模块化内容,既保证了内容的自定义性,又能在大规模应用中确保一致性。之后,利用内容即服务(CaaS)功能,通过 API 将内容投放到各个接触点。

    82210

    炸裂,Directus要干掉后台团队!GitHub 31K+星神器:SQL秒变API,你只管设计界面!

    Directus 是一个开源的“开放数据平台”(Open Data Platform),可以将任何 SQL 数据库瞬间升级为拥有 REST+GraphQL API 的实时数据后端,并提供一个面向非技术人员的...它支持多种数据库(PostgreSQL、MySQL、SQLite、OracleDB、MariaDB、CockroachDB、MS‑SQL) ,既适合新数据库,也适用于已有数据库架构,无需复杂迁移。...痛点场景多角色协作难题:技术团队与运营、内容团队常因数据库访问问题多次沟通。开发 API 过繁琐:后端需要手动设计接口、权限控制、文档等。...系统扩展性要求高:项目需灵活应对未来变更与扩展需求。部署成本与运维压力大:小团队难以维护专属 CMS 或后端系统。...核心功能亮点灵活数据建模(Collections)通过直观 UI 创建 collection(相当于数据库表)和字段,支持一对多、多对多等关系 。

    37710

    nextjs从零到一开发博客(万字长文)配合strapi

    # 打开链接http://127.0.0.1:3000/,这个时候就可以打开我们启动的页面了 添加CMS管理后台 切换到apps的目录执行安装strapi命令,演示作用我就没展示mysql的链接了,大家有兴趣我可以再下一个文章去写一下...新增完之后会重启服务,帮我们创建好实体 我们继续创建标签实体,定义这个实体跟我们的文章是多对多关系,下面我们先创建标签实体,这个我们不需要用发布模式,然后只需要一个短文本的name字段。...后面我们去创建内容,然后把这两个实体关联,我们可以随便创建一点内容,点击内容管理器 创建完之后我们需要做下一步,把它们关联起来,关系如何 文章可以有多个标签,标签也属于多个文章,我们得出个关系,就是多对多...好了我们去添加关系,这个时候添加完之后还是会重启服务。我们点击Contenty-type builder 去给article添加一个新的字段。...下面我们来设置api访问。 添加api访问 strapi是一个集成api访问和后台管理的headLess CMS开源框架。

    1.1K10

    在项目中集成Web端数据库操作:推荐工具一览

    AdminLTE 在项目中集成Web端数据库操作:推荐工具一览 大家好,我是猫头虎,今天和大家分享一些在Web项目中可以用来进行数据库增删改查操作的工具推荐。...这些工具可以帮助你简化数据库操作,提升开发效率和安全性。接下来我将介绍几款优秀的工具,并提供一些简单的代码示例,帮助大家快速上手。 1....Forest Admin 简介:Forest Admin是一个全面的后台管理工具,通过一个中间件和API来连接你的应用程序和数据库。...Strapi 简介:Strapi是一个开源的Node.js框架,允许开发者快速构建可定制的API,并且有内置的管理面板。...AdminLTE 简介:AdminLTE是一个基于Bootstrap的开源管理面板模板,可以快速创建一个漂亮的后台管理界面。

    87110

    Elasticsearch深入理解

    优点: 实时分析的分布式搜索引擎,效率极高 可以扩展到上百台服务器,处理PB级别的结构化或非结构化数据 它是一个面向文档的数据库,既然是数据库那就来说一下它和数据库的对应关系: 关系数据库 ⇒ 数据库...Elasticsearch采用了倒排索引的方式,这种方式比传统的关系型数据库中采用的B-Tree和B+Tree要快。...leap over lazy dogs in summer 为了创建倒排索引,我们首先将每个文档的 content 域拆分成单独的 词(我们称它为 词条 或 tokens ),创建一个包含所有不重复词条的排序列表...结果如下所示: 假设doc1的ID为1,doc2的ID为2,这个ID是Elasticsearch自建的文档ID,那么经过上面的倒排索引我们就可以得到一个对应关系: Term Posting List...2也是用int(4个字节)来存储。

    66910

    理想影音库构建之路(一):使用BGmi自动追番、刮削

    我一直想构建一个影音库来着,毕竟自从整了NAS之后它就一直闲着,堪称大号路由器。最近经过摸索,终于是确定了一个比较满意的方案,算是为NAS“正名”了。所以也就又开了个新坑,希望更新进度没事。...由于折腾的东西比较多,而且不同的模块之间关系也不大,所以我打算用2~3篇文章的篇幅来介绍下。...其实光论追番的话是没有必要使用Jellyfin的,直接使用BGmi就很完美了。不过由于我的目的是构建一个媒体库,能管理新番、旧番、演唱会等等媒体资源,所以才使用Jellyfin来观看、管理。...一些情况的处理 1. 识别不了第二季 硬链脚本默认一切番剧都是第一季。但是考虑到不同数据库的情况不同,有可能出现需要调整的情况,这时候就要在config.py设置特殊的番剧规则了。...番剧识别错误 极少数情况下番剧可能会被错误刮削,比如“小林家的龙女仆”怎么又是你会被识别成“小林家的龙女仆 迷你龙”。此时点右下角-识别,手动搜索一下就行。 3. 可以用EMBY、PLEX吗?

    6.8K20

    「Elasticsearch + Lucene」搜索引擎的架构、倒排索引和搜索过程

    优点类似于关系数据库里面每一个服务器可以支持多个数据库是一个道理,在每一索引下面又可以支持多种类型,这又类似于关系数据库里面的一个数据库可以有多张表一样。...Elasticsearch核心概念 索引 Index ES中的索引类似关系型数据库中的数据库,里面存放用户文档数据。...这里有一点和关系型数据库不同的是ES会在用户没有定义字段属性的情况下,自动嗅探该字段的类型进行自动识别。 集群 Cluster 多个ES节点工作在一起组成一个集群。...,每条记录称为一个倒排项(Posting)。...创建新文档时,Elasticsearch将为该文档分配一个版本号。对文档的每次更改都会产生一个新的版本号。当执行更新时,旧版本在.del文件中被标记为已删除,并且新版本在新的分段中编入索引。

    2K30

    超级详细:Go语言框架Gin和Gorm实现一个完整的待办事项微服务

    技术清单 本文中所涉及的技术内容主要有以下几种: Gin:轻量高效性能爆棚的WEB框架 Gorm:一个关系型数据库的ORM工具包,避免直接SQL语句操作 MySQL:数据库 curl工具,用于API接口数据测试...创建数据库 本文使用MySQL数据库装载数据。本节我们仅需创建一个空的数据库,就可以了。表结构在下一节使用gorm迁移功能创建。 使用Navicat工具新建界面如下图。 ?...即让数据库之前存储的记录的表字段和程序中最新使用的表字段保持一致(只增不减)。 我们先建一个todos表模型。...这个导入操作,gorm执行了下述操作 import _ "github.com/go-sql-driver/mysql" 这样我们无需重新手动处理包依赖关系。...在执行完整的程序之后,todos表会被自动迁移创建,其详细参数如下图。 ? 这张表也是我们本文所操作的数据基础。

    4.3K40

    【HarmonyOS Next之旅】DevEco Studio使用指南(二十九) -> 开发云数据库

    创建对象类型:创建一个用于存储数据条目的对象类型。 添加数据条目:在刚刚创建的对象类型内添加一条条数据,并配置数据所在的存储区。 部署云数据库:数据成功添加后,可以直接将该数据部署至AGC云端。...每创建一个对象类型,云数据库会在每个存储区实例化一个与之结构相对应的对象类型,用于存储对应的数据。 创建对象类型的操作如下: 1....支持手动创建和自动生成数据条目文件。 3.1 -> 手动创建数据条目文件 1. 右击“clouddb/dataentry”目录,选择“New > Cloud DB Data Entry”。 2....一个对象(object)即为一条数据,您可以通过新建一个对象(object)来为字段赋新值,也可以修改某个对象(object)下字段的值(主键或加密字段的值不支持修改)。如下图,写入了两条数据。...一个对象(object)即为一条数据,您可以通过新建一个对象(object)来为字段赋新值,也可以修改某个对象(object)下字段的值(主键或加密字段的值不支持修改)。如下图,写入了两条数据。

    31910

    Elasticsearch 如何做到快速检索?和 MySQL 索引完全不同!

    本文大致包括以下内容: 关于搜索: 传统关系型数据库和 ES 的差别 搜索引擎原理 细究倒排索引: 倒排索引具体是个什么样子的(posting list→term dic→term index) 关于...- 关于搜索 - 先设想一个关于搜索的场景,假设我们要搜索一首诗句内容中带“前”字的古诗。 用传统关系型数据库和 ES 实现会有什么差别?...在这个新的列表里面,所有的 id 都是小于 255 的,所以每个 id 只需要一个字节存储。...我们现在需要把它们用 AND 的关系合并,得出 posting list 的交集。...用 skip list 还会带来一个好处,还记得前面说的吗,postings list 在磁盘里面是采用 FOR 的编码方式存储的。

    89120

    区块链101:为什么要使用区块链

    区块链技术为数字世界中的认证和授权提供了新的工具,从而避免了许多中央管理人员的需要。因此,它支持创建新的数字关系。...区块链形式化和获得新的数字关系的革命是对创建互联网的骨干层的事务和交互的价值(通常被称为“互联网的价值”,而不是“信息网络”使用客户机-服务器的帐户和主副本数据库我们已经使用在过去20年了。)...许多组都创建了流程图来帮助一个人或实体在区块链或主副本、客户机-服务器数据库之间做出决定。以下因素是对之前所做的许多事情的精馏: 数据是否具有可审计的历史记录由于物理密封或外观的复杂性,纸张很难伪造。...因此,如果数据和它的历史对数字关系非常重要,那么区块链就提供了一种灵活的能力,使许多缔约方能够将新条目写入一个记录系统中,该系统也由许多托管商持有。...一定比例的欺诈被认为是不可避免的。 私钥加密技术支持推送交易,它不需要集中的系统和用于建立数字关系的复杂帐户。如果这个数据库需要数百万美元来确保轻量级的金融交易,那么就有一个可能的区块链是解决方案。

    2.1K50

    Ask Apple 2022 中与 Core Data 有关的问答

    在某些情况下,开发者需要在 macOS 上手动开启应用的 iCloud 同步选项( 尤其是在开发阶段 ),否则无法与其他的设备进行同步。...销毁数据库后,还需要重新在本地创建新的数据库。相较于开发者使用文件管理的方式删除 SQLite 数据,这种方法更加地安全。...对于已经上线的应用,最好还是采用手动添加一个新的版本的模式。除了更加安全外,也方便跟踪旧版本模型的变化。...如果 Core Data 内置的合并策略无法满足你的需求时,创建自定义合并策略或许是不错的选择。在多对多关系中创建谓词Q:我的视频实体与标签具有多对多关系,并且我有一个带有一些标签 ID 的数组。...我想获取在这组标签 ID 中至少有一个标签的所有视频。如何创建一个 NSPredicate 来表示这个?A:或许可以尝试一下 ANY tag.name IN %@。%@ 对应的是标签数组。

    4.7K20

    Android 框架学习1:EventBus 3.0 的特点与如何使用

    3.0 之后使用 @Subscribe 注解来描述一个注册的方法 @Documented @Retention(RetentionPolicy.RUNTIME) @Target({ElementType.METHOD...订阅方法会在一个新开的子线程(不是主线程、也不是发送者所在线程)执行(类似每次都新建一个线程) 在执行耗时操作时需要使用这个,不会影响其他线程 但是要控制数量,避免创建大量线程导致的开销 EventBus...普通事件是说,先注册,然后发送事件才能收到 而粘性事件,在发送事件之后再订阅该事件也能收到 此外,粘性事件在发送后会被保存在内存中,每次进入都会去内存中获取最新的粘性事件数据,除非你手动解除注册 可以看到...低优先级的就不会收到新的事件 解除注册后,也不会收到新的事件 接着看一下 粘性事件的注册、解除注册的效果: ?...从上面的动图可以看到: 在发送粘性事件之后注册粘性监听,也可以得到消息 发送的粘性事件会被缓存起来,以后只要注册这个事件就会得到消息 当发送新的粘性事件后,订阅粘性事件的方法会更新到最新的值 解除粘性事件的注册后

    1.5K70

    95道MongoDB面试题(含答案),1万字详细解析!

    以下特点使得MongoDB成为最好的NoSQL数据库: 面向文件的 高性能 高可用性 易扩展性 丰富的查询语言 8、journal回放在条目(entry)不完整时(比如恰巧有一个中途故障了)会遇到问题吗..._adminCommand("connPoolStats"); 28、如果块移动操作(moveChunk)失败了,我需要手动清除部分转移的文档吗?...use 会创建一个新的数据库,如果该数据库存在,则返回这个数据库。 63、什么是非关系型数据库 非关系型数据库是对不同于传统关系型数据库的统称。...C、C++、C#、Java、Node.js、Perl、Php 等 69、在MongoDB中如何创建一个新的数据库 MongoDB 用 use + 数据库名称 的方式来创建数据库。...use 会创建一个新的数据库,如果该数据库存在,则返回这个数据库。

    9.2K30
    领券