【问题标题】:keystonejs schema function as public functionkeystonejs 模式函数作为公共函数
【发布时间】:2015-10-20 15:44:21
【问题描述】:

想要使用公共架构函数但不知道如何实现, 这是我的例子:

var Token = new keystone.List('Token', {});

Token.add({
    uuid: { type: String, index: true },
    state: { type: Types.Select, options: 'created, used', default: 'created' },
    endDate: { type: Types.Date },
    user: { type: Types.Relationship, ref: 'User' },
    url: { type: String }
});

Token.schema.methods.getUrl = function () { /*DO something*/ }

比我尝试在我的模块中调用 getUrl

var Token = modelUtils.promisifyModel(keystone.list('Token').model);
Token.getUrl();

我得到一个错误:Token.schema.methods 不是函数

【问题讨论】:

  • 什么是modelUtils?目前尚不清楚错误来自哪个代码。
  • jed 我很抱歉我的懒惰,你的问题是找到问题的正确基础,请看我的回答......非常感谢你的回答/问题。
  • 别担心,很高兴你明白了 :)

标签: javascript keystonejs


【解决方案1】:

很抱歉,modelUtils 是 Token 对象的包装器,并返回 wrapperobject 的一些属性。我懒得检查整个代码(不是我的代码),但是如果我发现关于 modelUtils 的问题,我意识到这是扩展包装类的关键。 真的很抱歉,为自己的懒惰感到有点羞耻。

【讨论】:

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