NodeJS と pg-promise を PostgreSQL バックエンドで実行しています。場合によっては例外をスローする独自の TRIGGER を作成しました。これで問題なく動作します。
しかし、pg-promise を使用すると、エラーの名前を把握するのに苦労します。
このコードの使用:
...
.catch(function(err) {
console.log(err);
});
次の出力が得られます。
[ { success: false,
result:
{ [error: vote_limit_exceeded]
name: 'error',
length: 80,
severity: 'ERROR',
code: 'P0001',
detail: undefined,
hint: undefined,
position: undefined,
internalPosition: undefined,
internalQuery: undefined,
where: undefined,
schema: undefined,
table: undefined,
column: undefined,
dataType: undefined,
constraint: undefined,
file: 'pl_exec.c',
line: '3068',
routine: 'exec_stmt_raise' } } ]
コンテキストに「vote_limit_exceeded」という名前が表示されますが、テキスト文字列として返すにはどうすればよいですか?
私は「近づく」ことを試みました:
console.log(err[0].result);
しかし、「vote_limit_exceeded」を分離することはできません。