我正在编写一个新的postgreSQL数据库的函数,我试图循环嵌套结构.
新的JSON功能甚至可以实现吗?我想要做的是在下面:
DO
$BODY$
DECLARE
omgjson json := '[{ "type": false }, { "type": "photo" }, {"type": "comment" }]';
i record;
BEGIN
FOR i IN SELECT * FROM json_array_elements(omgjson)
LOOP
RAISE NOTICE 'output from space %', i;
END LOOP;
END;
$BODY$ language plpgsql
Run Code Online (Sandbox Code Playgroud)
这将返回一组记录(文本!),这不是JSON!所以我不能查询它i->>'type',但这正是我想要完成的...
我正在尝试创建一个提供单例服务的模块。想象一个QueueService最简单的实现是单例服务。
可重现的存储库:https : //github.com/colthreepv/nestjs-singletons
代码墙
app.module.ts:
@Module({ imports: [FirstConsumerModule, SecondConsumerModule] })
export class AppModule {}
Run Code Online (Sandbox Code Playgroud)
firstconsumer.module.ts和secondconsumer.module.ts(它们是相同的):
@Injectable()
class FirstConsumer {
constructor(private readonly dependency: DependencyService) {}
}
@Module({
imports: [DependencyServiceModule],
providers: [DependencyService, FirstConsumer]
})
export class FirstConsumerModule {
constructor(private readonly first: FirstConsumer) {}
}
Run Code Online (Sandbox Code Playgroud)
依赖.module.ts:
@Injectable()
export class DependencyService {
constructor() { console.log("Instance created") }
}
@Module({ providers: [DependencyService], exports: [DependencyService] })
export class DependencyServiceModule {}
Run Code Online (Sandbox Code Playgroud)
代码完成
我想获得的是 console.logInstance created只发布一次。
在这一刻:
[NestFactory] Starting Nest …Run Code Online (Sandbox Code Playgroud) 我怀疑我的问题会得到解答,但我会在这里尝试,因为我的挫折程度如此之高,以至于它可能会帮助我自己降低它们!
所以,我想做的是:
这将是Ext.NET 2.1的一个特性,因为所有要求都将在nuGet包中打包,唯一的问题是我,因为其他少数开发人员想要使用那些已经可以正常工作的东西
我现在成功做了什么:
这是如何做:
http://diffchecker.com/v99ScX0x
http://diffchecker.com/7UEK058Y
我希望diffchecker很清楚,让你明白,无论如何,两个文件中的变化都是相同的,它们必须如此!
routes.IgnoreRoute( "{排除}/{extnet} /ext.axd");
在那里我编辑了一下页面,使其更加MVC风格,真的没什么大不了的.整页如下:
@{
ViewBag.Title = "Infinite Scrolling - Ext.NET Examples";
}
@Html.X().ResourceManager()
<h1>Infinite Scrolling</h1>
<p>The brand new GridPanel supports infinite scrolling, which enables you to load any number of records into a grid without paging.</p>
<p>The GridPanel uses …Run Code Online (Sandbox Code Playgroud) 我的JsonStore如此定义:
var data_json = new Ext.data.JsonStore({
url: '/Game/json_index',
autoLoad: true,
id: 'data_json',
idProperty: 'id',
fields: [ {name: 'id', type: 'int'}, 'name', {name:'add_date', type:'date', dateFormat: 'M$'}, 'price', 'kind', 'metacritic'],
listeners: { 'load': function(storename, records, options){
console.dir(this);
}},
writer: new Ext.data.JsonWriter()
})
Run Code Online (Sandbox Code Playgroud)
它收到的JSON的DUMP是这样的:
[
{"id":1,"name":"Guild Wars 2","add_date":"\/Date(1346104800000)\/","price":24.99,"kind":"MMO","metacritic":93},
{"id":2,"name":"Dark Souls: Prepare to Die Edition","add_date":"\/Date(1345759200000)\/","price":45.00,"kind":"actionrpg","metacritic":87},
{"id":3,"name":"Orcs Must Die! 2","add_date":"\/Date(1343599200000)\/","price":15.00,"kind":"action","metacritic":83}
]
Run Code Online (Sandbox Code Playgroud)
JSON被正确解码,商店里满是我的记录,但要注意......可怕的事情发生了!

所有记录都标记为phantom = true,这不能让我正确使用ExtJS 3.4.x store.save()功能
我在google上彻底搜索了这个问题,并且(我认为)它与JsonReader没有将记录id与我传递的'id'字段相关联的事实联系起来.我甚至指定了idProperty:'id'.
帮忙吗?我变得绝望,阅读关于创造记录的极端来源是纯粹的痛苦.