【问题标题】:Generate Url from virtual field or from value of another field从虚拟字段或另一个字段的值生成 URL
【发布时间】:2016-12-22 23:32:13
【问题描述】:

我想在 keystoneJS 的列表中生成一个 Url。我更喜欢 url 不存储在 mongo 中。

尝试过:

  • 虚拟字段:有效,但不会为 href 生成原始 HTML。
  • Types.Url:我获得了 href 格式,但我需要来自模型中另一个字段的值,因此它会生成未定义的 url。示例:
{ type: Types.Url, label: "Link", default: "[http://www.stackoverflow.com/ask?id=][1]" + this._id }

任何关于如何实现这一点的帮助将不胜感激。

【问题讨论】:

    标签: keystonejs


    【解决方案1】:

    对于您的第二点,this._id 在向模型添加字段时不可用,因此您得到undefined

    请尝试在您的模型上使用预保存挂钩:

    yourModel.pre('save', function(next) {
        this.link = "[http://www.stackoverflow.com/ask?id=][1]" + this._id;
        next();
    }
    

    我不太确定您是否每次都尝试以这种方式生成链接,或者用户是否也应该能够添加自己的链接。如果是后者,您需要检查链接是否已填充到预保存挂钩中。

    希望对您有所帮助,很抱歉花了这么长时间才得到答案!

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      相关资源
      最近更新 更多