gpt4 book ai didi

javascript - 如何在 Strongloop 环回脚手架项目中覆盖基本用户?

转载 作者:塔克拉玛干 更新时间:2023-11-02 20:46:31 24 4
gpt4 key购买 nike

给定一个全新的项目:

$ slc lb 项目 myapp

如何将 models.json 中的“user”模型替换为 中的“customer”模型。/models 目录?客户应该有登录/注销等方法,“用户”不应作为 API 存在。此外,客户模型不应是动态的。让我们假设客户应该有如下架构:

  • 姓名
  • 电子邮件
  • 密码
  • 问题
  • 回答
  • 电话
  • 已验证
  • 数据创建

我已经玩了几天了,我的 google-fu 让我失望了。任何帮助表示赞赏。谢谢。

最佳答案

这是惯用的方式:

  1. models.json 中,将 user 重命名为 Customer

  2. models/customer.js 中,将自定义方法添加到通过 models.json 创建的模型中:

    var app = require('../app');
    var Customer = app.models.Customer;

    Customer.myfn = function(cb) {
    // etc.
    cb();
    };

Also, the customer model should not be dynamic. Let's pretend customer should have a schema as follows

使用strict 来锁定属性:

{
"Customer": {
"options": {
"base": "User",
"strict": true
},
"properties": {
// define properties (schema)
}
}
}

参见 Model definition reference了解更多详情。

根据此答案下方的评论进行更新

可以代码优先创建模型,请参阅 customer.js在引入 models.json 之前构建的 LoopBack 示例应用程序中。

这是您应该在代码中执行的操作:

var app = require('../app');

var Customer = module.exports = loopback.createModel(
'Customer',
{
name: 'string',
// and all other more properties
},
{
base: 'User',
strict: true
}
);

app.model(Customer);

这与 app.bootmodels.json 中的所有条目执行的代码基本相同。它应该将熟悉的 REST 路由添加到您的应用程序:GET/customersPOST/customers/loginPOST/customers/logout 等。

如果没有看到您的代码不起作用并且不知道您所说的“不起作用”到底是什么意思,很难为您提供帮助。

关于javascript - 如何在 Strongloop 环回脚手架项目中覆盖基本用户?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/24515264/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com