CMS系统 已归档

keystone-classic

keystonejs/keystone-classic

Node.js 内容管理系统和网络应用框架

14485
Stars 标星
2151
Forks 分支
468
Watchers 关注
352
Open Issues
JavaScript
主要语言
MIT
开源协议
148.4 MB
仓库大小
1 个月前
最后推送
一键安装扩展 / 插件指令
dsh plugin --profile web add github:keystonejs/keystone-classic
git clone https://github.com/keystonejs/keystone-classic.git
git clone git@github.com:keystonejs/keystone-classic.git
README.md master

英文原文正文为项目原始 README(英文),本站后续会翻译为中文,当前仅剔除图片与无关章节并统一排版。

:warning: 已归档 :warning:

Keystone classic 不再接收任何新的更新。

我们建议在新项目中使用 Keystone 6。



关于Keystone

KeystoneJS 是一个强大的 Node.js 内容管理系统和 Web 应用框架,基于 Express Web 框架和 Mongoose ODM 构建。Keystone 可以轻松创建复杂的网站和应用,并附带一个美观的自动生成管理界面。

查看我们的 演示网站 以了解其实际效果。

文档

有关 Keystone v4 的文档和指南,请参见 keystonejs.com。

有关 Keystone v0.3 的文档,请参见 v3.keystonejs.com。

入门

本节提供了对 Keystone 的简短介绍。有关更全面的介绍,请查看 Keystone 文档中的 入门指南。

安装

开始使用 Keystone 的最简单方法是使用 Yeoman 生成器:

$ npm install -g generator-keystone
$ yo keystone

回答问题,生成器将根据您选择的选项创建一个新的项目,并从 npm 安装所需的包。

另外,要将 Keystone 包含到现有项目中或从零开始(无需 Yeoman),请在 package.json 文件的 dependencies 数组中指定 keystone: "4.0.0",然后在终端中运行 npm install。

然后通读 文档 和 示例项目,以了解如何使用它。

配置

配置变量可以作为对象传递给 keystone.init 方法,或者在调用 keystone.start 之前的任何时间使用 keystone.set(key, value) 设置。这允许更灵活的执行顺序。例如,如果您在路由中引用了 Lists,则可以在配置 Lists 后设置路由。

有关可用选项的详细信息和示例,请参阅 KeystoneJS 配置文档。

数据库字段类型

Keystone 建立在 MongoDB 提供的基本数据类型之上,并允许您轻松地向应用程序的模型添加丰富且功能强大的字段。

您可以在模型上获得辅助方法,以便轻松处理每种字段类型(例如格式化日期或数字、调整图像大小、获取选择字段的可用选项数组,或使用 Google 的 Places API 改善地址),并且拥有一个美观且响应式的管理 UI 来编辑数据。

有关各种字段类型的详细信息和示例,以及如何在应用程序中设置和使用数据库模型,请参阅 KeystoneJS 数据库文档。

在生产环境中运行 KeystoneJS

当您将 KeystoneJS 应用部署到生产环境时,请确保将 ENV 环境变量设置为 production。

您可以通过在 .env 文件中设置 NODE_ENV=production 来实现,该文件由 dotenv 处理。

设置您的环境可启用某些功能(包括模板缓存、更简化的错误报告和 HTML 压缩),这些功能在生产环境中非常重要,但在开发环境中可能会不便。

社区

我们有一个友好、不断成长的社区,欢迎每个人积极参与:

  • 在 Twitter 上关注 @KeystoneJS 以获取新闻和公告。
  • 在 Stack Overflow 上提出技术问题,并标记为 keystonejs.
  • 在我们的 GitHub 问题追踪 上报告错误和功能建议。
  • 加入 KeystoneJS Slack 与 Keystone 社区和贡献者进行一般讨论。

我们很乐意听取关于 Keystone 以及您使用它的项目的反馈。在 Twitter 上通过 @KeystoneJS 联系我们。

贡献

如果可以,请通过报告问题、讨论想法、帮助回答其他开发者的问题或者提交带有补丁和新功能的 pull request 来贡献。我们尽力回应所有问题和 pull request,并定期向 npm 发布补丁版本。

如果您打算贡献代码,请遵循我们的 编码标准 并阅读我们的 贡献指南。

相关项目

如果您在任何项目中使用 KeystoneJS,我们鼓励您将其添加到我们的 相关项目页面。这里也是查找生成器和其他集合了 KeystoneJS 的项目的地方。

致谢

KeystoneJS 是一个免费且开源的社区驱动项目。感谢我们众多的 贡献者 和 用户 的辛勤付出,使其如此出色。

Keystone 的开发由关键贡献者领导,包括 Jed Watson、Joss Mackison 和 Max Stoiber,并由位于澳大利亚悉尼的 Thinkmill 自豪地支持。

许可

(MIT 许可证)

版权所有 (c) 2016-2019 Jed Watson

特此免费授予任何获得本软件及相关文档文件(“软件”)副本的人无限制权利,包括但不限于使用、复制、修改、合并、发布、分发、再许可和/或销售本软件的副本,并允许向其提供本软件的人这样做,但须遵守以下条件:

上述版权声明和本许可声明应包含在软件的所有副本或重要部分中。

本软件按“原样”提供,不附带任何形式的明示或暗示的担保,包括但不限于对适销性、特定用途适用性及非侵权的担保。在任何情况下,无论是在合同诉讼、侵权或其他方面,作者或版权持有人均不对因本软件或使用本软件或其他交易所引起的任何索赔、损害或其他责任承担责任。

本站来源与版权声明
  • 本文标题:keystone-classic - Node.js 内容管理系统和网络应用框架
  • 本文链接:https://www.cn121.com/cms/keystonejs-keystone-classic.html
  • 原项目:keystonejs/keystone-classic 版权归原作者 keystonejs 及贡献者所有
  • 收录信息:本站于 2026-10-24 收录本项目,本页所列协议与仓库指标均为收录当时的状态;该日期之后原项目的版本更新与协议变更,本页不作同步。
  • 开源协议:收录时本项目采用 MIT(查看 LICENSE 原文),本站转载其原始文档(未改动文字,仅剔除图片与无关章节);使用、修改、分发请以该仓库 LICENSE 原文为准。
  • 站点出处:本文首发于 OneTwoOne,收录自 GitHub 开源项目 keystonejs/keystone-classic。
  • 内容说明:本页正文为原项目 README 原文(英文),本站后续会翻译为中文(当前尚未译出,仅将二级标题译为中文,便于按栏目定位;标题原文可在下方原仓库中查看),仅剔除了图片与赞助等无关章节、并把相对链接改为绝对地址;页首简介为机器翻译自仓库描述。
  • 引用声明:商业转载、第三方聚合或 AI 检索训练引用时,请务必保留以上来源出处、本文永久链接,以及原项目的版权声明与许可信息。
  • 下架通道:若原项目此后变更或收紧了许可协议、或作者/权利人认为本站的收录方式(译文、排版适配、简介翻译等)超出其授权范围,请通过 xyd3302001@163.com 发送下架通知,并附上项目地址与本页链接。本站核实后将第一时间删除本页内容,或改为不复制原文的目录性收录;署名更正等其他要求可一并提出。