【问题标题】:got confused in loopback在环回中感到困惑
【发布时间】:2018-02-24 07:07:42
【问题描述】:

大家好,我是环回的新手,请在此之后帮助我 1. 我知道如何从环回服务器呈现 html 页面,例如:-

<form method="post" action="register">
 <input type="text" name="name">
 <input type="text" name="lastname">
</form>

如何在我的模型用户中请求姓名或姓氏

'use strict';
module.exports = function(User) {

 // how i can receive requested of name or lastname for eg :- 
 console.log(req.name)
};

2.如何将这些数据插入到我的 postgres 表(表名:-register)中的“名称”列 3.最后一个是如何使用自动迁移区分表名和模型名

【问题讨论】:

    标签: node.js loopbackjs strongloop


    【解决方案1】:
    module.exports = function(User) {
        User.show = function(name,lastName) {
          console.log(name);
          console.log(lastName);
        }
    
        User.remoteMethod('show', {
              accepts: [
                      { arg: 'name', type: 'string' },
                      { arg: 'lastName', type: 'string' }
                  ],
              returns: {arg: 'result', type: 'string'}
        });
    }
    

    插入类似:

    var yourVar = name;
    pg.connect(dbUrl, function(err, client, done) {
        client.query(
            'INSERT into yourTable(name) VALUES ($1)', 
            ['title'], 
            function(err, result) {
                if (err) {
                    console.log(err);
                } else {
                    console.log('row inserted');
                }
            });        
    });
    

    取决于您的表和日志凭据

    编辑:

    要使用自动迁移,您必须首先:

    在 /server/datasources.json 中创建数据源:

    "mydb": {
        "name": "mydb",
        "connector": "postgresql"
    }
    

    连接到 /var/run/postgresql/.s.PGSQL.5432 中的 UNIX 域套接字:

    {
        "postgres": {
            "host": "/var/run/postgresql/",
            "port": "5432",
            "database": "dbname",
            "username": "dbuser",
            "password": "dbpassword",
            "name": "postgres",
            "debug": true,
            "connector": "postgresql"
        }
    }
    

    在 /common/models/model.json 中定义你的模型,它应该是这样的:

    var schema={
        "name": "User",
        "options": {
            "idInjection": true,
            "postgresql": {
                "schema": "yourShema",
                "table": "USER"
            }
         },
         "properties": {
         "id": {
             "type": "Number",
             "required": true,
             "length": 64,
             "precision": null,
             "scale": null,
             "postgresql": {
                 "columnName": "id",
                 "dataType": "integer",
                 "dataLength": 64,
                 "dataPrecision": null,
                 "dataScale": null,
                 "nullable": "NO"
             }
         },
         "name": {
             "type": "String",
             "required": false,
             "length": 40,
             "precision": null,
             "scale": null,
             "postgresql": {
                 "columnName": "name",
                 "dataType": "character varying",
                 "dataLength": 40,
                 "dataPrecision": null,
                 "dataScale": null,
                 "nullable": "YES"
             }
         },
         "lastName": {
             "type": "String",
             "required": false,
             "length": 40,
             "precision": null,
             "scale": null,
             "postgresql": {
                 "columnName": "lastName",
                 "dataType": "character varying",
                 "dataLength": 40,
                 "dataPrecision": null,
                 "dataScale": null,
                 "nullable": "YES"
          }
        }
    }
    

    那么您必须像这样在代码中调用Model.automigrate()Model.autoupdate()

    ds.createModel(schema);
    ds.autoupdate(schema) {
        ds.discoverModelProperties('USER', function (err, props) {
            console.log(props);
        });
    });
    

    你肯定会改变一些事情,但我希望你能实现你想要的;)

    【讨论】:

    • 我从未使用过自动迁移,因此我无法为您提供帮助,对不起,也许您应该再提出一个问题
    • 有时间我会研究的
    • ds.discoverModelProperties('USER', function (err, props) { console.log(props); }) 这里的 props 方法是什么
    猜你喜欢
    • 2018-10-03
    • 2015-11-07
    • 1970-01-01
    • 2021-04-06
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2016-07-13
    • 2017-05-03
    相关资源
    最近更新 更多