首页 > 解决方案 > 生产中缺少字段类型

问题描述

我们的生产服务器上的某些字段类型存在问题。缺少某些字段类型,导致管理界面在尝试列出所有项目时崩溃。到目前为止,我们遇到问题的领域DateCloudinaryImages(请注意DateTime并且CloudinaryImage工作正常)。

在我们的登台服务器上检查源代码并与我们的生产服务器进行比较时,我们在编译的 js 文件中看到以下差异:

example.com/js/fields.js舞台上:

exports.Fields = {
  text: require("types/text/TextField"),
  textarea: require("types/textarea/TextareaField"),
  html: require("types/html/HtmlField"),
  cloudinaryimage: require("types/cloudinaryimage/CloudinaryImageField"),
  select: require("types/select/SelectField"),
  relationship: require("types/relationship/RelationshipField"),
  datetime: require("types/datetime/DatetimeField"),
  boolean: require("types/boolean/BooleanField"),
  embedly: require("types/embedly/EmbedlyField"),
  cloudinaryimages: require("types/cloudinaryimages/CloudinaryImagesField"),
  numberarray: require("types/numberarray/NumberArrayField"),
  code: require("types/code/CodeField"),
  number: require("types/number/NumberField"),
  textarray: require("types/textarray/TextArrayField"),
  url: require("types/url/UrlField"),
  file: require("types/file/FileField"),
  email: require("types/email/EmailField"),
  name: require("types/name/NameField"),
  password: require("types/password/PasswordField")
};

example.com/js/fields.js生产:_

exports.Fields = {
  text: require("types/text/TextField"),
  textarea: require("types/textarea/TextareaField"),
  html: require("types/html/HtmlField"),
  cloudinaryimage: require("types/cloudinaryimage/CloudinaryImageField"),
  select: require("types/select/SelectField"),
  relationship: require("types/relationship/RelationshipField"),
  datetime: require("types/datetime/DatetimeField"),
  boolean: require("types/boolean/BooleanField"),
  embedly: require("types/embedly/EmbedlyField"),
  numberarray: require("types/numberarray/NumberArrayField"),
  code: require("types/code/CodeField"),
  number: require("types/number/NumberField"),
  textarray: require("types/textarray/TextArrayField"),
  url: require("types/url/UrlField"),
  file: require("types/file/FileField"),
  email: require("types/email/EmailField"),
  name: require("types/name/NameField"),
  password: require("types/password/PasswordField")
};

眼尖的读者可以看到登台服务器有cloudinaryimages: require("types/cloudinaryimages/CloudinaryImagesField"),,而生产服务器没有。Date根本没有出现在这些中,也许是因为我们上次遇到这个问题时删除了所有使用该类型的字段?

我们的网站托管在 Heroku 上。我们已经尝试禁用节点缓存和重建。我们已经尝试将暂存构建推广到生产环境。问题仍然存在。我们的生产服务器的环境设置为production.

文件的构建是否fields.js取决于我们使用的字段?为什么我们的生产服务器没有得到它们?

任何帮助表示赞赏。

Keystone 版本:(4.0.0-beta.8 带有与此无关的小添加)

标签: herokukeystonejs

解决方案


推荐阅读