首页
学习
活动
专区
工具
TVP
发布
精选内容/技术社群/优惠产品,尽在小程序
立即前往

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

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

9.9K32

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 接口,工作量将会十分巨大,并且还可能是费力不讨好的事。

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

    MassCMS VS Strapi比较

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

    84131

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

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

    4.6K20

    Strapi 实现用户注册与登录

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

    3.7K30

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

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

    35410

    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个字节)来存储。

    43510

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

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

    39210

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

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

    6.1K20

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

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

    1.5K30

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

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

    3.9K40

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

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

    1.7K50

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

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

    2.9K20

    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 会创建一个新的数据库,如果该数据库存在,则返回这个数据库。

    8.1K30

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

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

    71920

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

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

    1.3K70

    if 我是前端Leader,怎么走出小微前端团队的围墙?

    但是这个星期的紧张、忙碌以及焦虑,让我想明白了一些事情,写了本文,没什么干货,只是一些絮絮叨叨。 上周对我来说还有一个重要的里程碑是掘金等级到达 LV5。...新的一年,希望能够沉下心来,深入钻研自己的方向,投放更多精力到参与开源上面。...[4] 通俗讲解了中台的概念。 不是大厂才能实践中台,我发现我们的应用也存在很多重复的业务,每新建一个应用,后端都要重复去拷贝和实现这些业务。对于后端来说,资源非常浪费,对于前端来说也是一个灾难。...配图 张云龙介绍了一个适合小微项目的业务中台解决方案,它举的例子是 `Strapi`[5]: 这是一个Headless CMS, 翻译为中文就是'无头'内容管理系统,和传统 CMS 的最大区别是 Headless...通过它, 你可以实现: 可视化、快速的业务模型创建。类似创建数据库模型(数据库无关),可以灵活地配置各种字段类型(除了原始类型、还支持邮箱、文件上传)以及模型关系。 暴露规范的接口。

    1.1K20

    带你认识 flask 全文搜索

    与关系数据库不同,数据只是一个JSON对象。...我之前没有提到的一点是,如果你尝试添加一个带有现有id的条目,那么Elasticsearch会用新的条目替换旧条目,所以add_to_index()可以用于新建和修改对象。...在接下来的会话中,我手动将数据库中的所有用户动态添加到Elasticsearch索引。...更好的解决方案是在SQLAlchemy数据库进行更改时自动触发这些调用。 用对象替换ID的问题可以通过创建一个从数据库读取这些对象的SQLAlchemy查询来解决。...与其在每个路由中创建表单对象,然后将表单传递给所有模板,我将向你展示一个非常有用的技巧,当你需要在整个应用中实现一个功能时,可以消除重复代码。

    3.5K20

    Elasticsearch 为什么能做到快速检索?

    本文大致包括以下内容: 1) 关于搜索 传统关系型数据库和 ES 的差别 搜索引擎原理 2) 细究倒排索引 倒排索引具体是个什么样子的(posting list -> term dic -> term...二、关于搜索 先设想一个关于搜索的场景,假设我们要搜索一首诗句内容中带“前”字的古诗, 用传统关系型数据库和 ES 实现会有什么差别?...索引内部结构 上面所描述的倒排索引,仅仅是一个很粗糙的模型。真的要在实际生产中使用,当然还差的很远。 在实际生产场景中,比如 ES 最常用的日志分析,日志内容进行分词之后,可以得到多少的 term?...在这个新的列表里面,所有的 id 都是小于 255 的,所以每个 id 只需要一个字节存储。...我们现在需要把它们用 AND 的关系合并,得出 posting list 的交集。

    1.1K20
    领券