0
我目前正在設計一個與Postgres數據庫之上的Rails API對話的Web應用程序。我使用PostgreSQL中的jsonb數據類型以JSON格式存儲一些數據。我提交到Rails的API中的JavaScript對象的關鍵是在全部大寫:Postgresql顯示字母之間的下劃線的JSON密鑰?
{
WEIGHT: 150,
RACE: 'White/Caucasian',
}
將數據提交就好了,但是當我看在數據庫中,密鑰存儲與字母之間的下劃線,像這樣:
{
"W_e_i_g_h_t": 150,
"R_a_c_e": "White/Causasian",
}
如果我使用Rails的控制檯來創建從數據庫模型對象,按鍵仍然存儲在相同的方式,用字母之間的下劃線。但是當數據返回到我的web應用程序時,這些密鑰又回到了所有大寫字母,沒有下劃線。像這樣將密鑰存儲在數據庫中的原因是什麼?
以前從未見過這個問題,但您提交的JSON無效。這是否影響它?有效的JSON版本位於https://gist.github.com/maxshelley/43848eb3d699a9761cfe7b419639ec40 – maxshelley
Postgres不會觸摸您的密鑰。相反,rails(或者你使用的其中一個組件)將key從'camelCase'轉換爲'under_scores'。但是,因爲您使用全部大寫的鍵,每個字母都會得到一個下劃線。 – pozs
@maxshelley對不起,我寫了一個實際的Javascript對象而不是有效的JSON格式。 – ClydeDroid