LoopbackJS 生成对应 Oracle 视图的model
StrongLoop Arc 工具中的discover model 目前只能discover 表, Oracle数据库中的视图经测试并不能显示在列表中。
无奈之下,暂时只能采取替代方案。
解决方法: 在server/boot/ 目录下建立一个script, 代码如下:
// addSchema.js
var fs = require('fs');
module.exports = function(app){
var dataSource = app.datasources.local; // “local” 是我定义的dataSource
var schemaName = "VIEW_BLOCKINFO"; // 数据库中的视图名称
var filePath = "E:\\work\\APIPlatformProjectFile\\sourcecode\\DATA_EP_Project\\SourceCode\\api-server\\common\\models\\block-info.json"; // 要保存的文件路径
dataSource.discoverSchema(schemaName, {owner: 'DEP'},function(err, schema) {
if (err) throw err;
schema.name = "BlockInfo"; // 自己定义的modelname
schema.base = "PersistedModel"; // shema中不含有base属性,需要自己添加
//console.log('schema:', schema);
fs.writeFile(filePath,
JSON.stringify(schema, null, 2), 'utf8', function (err) { // 格式化json输出,避免混成一坨.
if (err) throw err;
console.log('saved');
});
});
};
然后在common/models/ 目录下添加文件 "block-info.js"
Oracle中视图对应的model就创建成功了。其他操作和普通的表对应的model是一样的。
此处有个点需要特别注意:
model的json文件和js文件的名称一定要相同,否则,在js文件里写的操作全都不会执行到, - -|| 相当于没有这个文件。
LoopbackJS 生成对应 Oracle 视图的model的更多相关文章
- oracle视图如何使用
1.视图的概述 视图其实就是一条查询sql语句,用于显示一个或多个表或其他视图中的相关数据.视图将一个查询的结果作为一个表来使用,因此视图可以被看作是存储的查询或一个虚拟表.视图来源于表,所有对视图数 ...
- 简述oracle视图
1.视图的概述 视图其实就是一条查询sql语句,用于显示一个或多个表或其他视图中的相关数据.视图将一个查询的结果作为一个表来使用,因此视图可以被看作是存储的查询或一个虚拟表.视图来源于表,所有对视图数 ...
- PowerDesigner生成的ORACLE 建表脚本中去掉对象的双引号,设置大、小写
原文:PowerDesigner生成的ORACLE 建表脚本中去掉对象的双引号,设置大.小写 若要将 CDM 中将 Entity的标识符都设为指定的大小写,则可以这么设定: 打开cdm的情况下,进入T ...
- Oracle 视图 (待更新, 缓存)
参考: 视图.索引.存储过程优缺点: http://www.cnblogs.com/SanMaoSpace/p/3147059.html oracle视图总结(转):http://tianwei013 ...
- [转载]PowerDesigner生成的ORACLE 建表脚本中去掉对象的双引号,设置大、小写
若要将 CDM 中将 Entity的标识符都设为指定的大小写,则可以这么设定: 打开cdm的情况下,进入Tools-Model Options-Naming Convention,把Name和Code ...
- 使用generator生成dao、mapping和model
我们在ssm框架开发的时候(不限于此框架),为了开发效率.有时候不得不提高一下代码速度.千篇一律的事情谁都头疼,比如写dao,写model,写mapping等等.不仅慢,而且一不留神,还会出错. 今天 ...
- CodeSmith生成SQL Server视图的实体类脚本/对应的生成模板
C#生成sql视图的实体类 using System;using System.Text;using CodeSmith.Engine;using SchemaExplorer;using Syste ...
- 第15.23节 PyQt(Python+Qt)入门学习:Model/View架构中QListView视图配套Model的开发使用
老猿Python博文目录 专栏:使用PyQt开发图形界面Python应用 老猿Python博客地址 一.概述 QListView理论上可以和所有QAbstractItemModel派生的类如QStri ...
- Oracle视图分类及各种操作讲解(超级好文)
目录:一.视图的定义: 二.视图的作用: 三.创建视图: 1.权限 2.语法 3.1 创建简单视图 3.2 创建连接视图 3.2.1 连接视图定义 3.2.2 创建连接视图 3.2.3 ...
随机推荐
- Unity5 AssetBundle 打包以及加载
using UnityEngine; using System.Collections; using System.Collections.Generic; using UnityEditor; us ...
- python-day-20
重点总结记录 1.Django请求的生命周期 路由系统 -> 试图函数(获取模板+数据=>渲染) -> 字符串返回给用户 2.路由系统 /index/ -> 函数或类.as_v ...
- sqlserver创建,调用 带返回值存取过程
<1>create: ALTER proc [dbo].[common_proc] @sql1 varchar(5000), @sql2 varchar(5000) OUTPUT as ...
- wpf 常见死锁方式
Thread tr0 = new Thread(new ParameterizedThreadStart((obj1) => { lock (aaa) { Thread.Sleep(); thi ...
- sed 命令使用
ios 的sed 命令 跟linux sed 命令有区别 # 所有的a 替换成b sed -i "" 's/a/b/g' #删除掉所有包含a的行 sed -i "/a/ ...
- Win7如何显示/隐藏Administrator账号
为了保证安全,windows7的administrator账户默认在登录时是不显示的. 在登录页面显示administrator账户的方法: 1. 选择"开始"菜单->&qu ...
- c++常见面试题
1.class和struct的区别? 在c++中,在class中声明的成员默认为private成员,而在struct中声明的成员默认为public成员,class的默认继承方式为private,str ...
- iOS开发:开发证书知识点总结
1. Error: An App ID with identifier "*" is not avaliable. Please enter a different string. ...
- python 面向对象-笔记
1.如何创建类 class 类名: pass class bar: pass 2.创建方法 构造方法,__init__(self,arg) obj = 类('a1') 普通方法 obj = 类(‘xx ...
- JS实现动态提示文本框可输入剩余字数(类似发表微博数字提示)
一.实现效果: 为了更直观的体现用户在文本框输入文本时能看到自己输入了多少字,项目中需要通过判断提示文本框剩余可输入字数. html & JS: <div> <textare ...