2013-04-24 114 views
5

我是PostgreSQL的完整初學者。我非常驚訝Postgres提供的hstore數據類型。那麼,我正在使用Rails 3框架並開發一個使用PostgreSQL的簡單應用程序。我想在一個字段中存儲散列數組。 對於EG:是否有可能在PostgreSQL中擁有一個hstore數組

authors: [ 
      { 
      name: "abc", 
      email: "[email protected]" 
      }, 
      { 
      name: "xyz", 
      email: "[email protected]" 
      } 
     ] 

這可能在PostgreSQL中使用Rails 3?如果是這樣,有人可以提供見解如何?

感謝

+1

那麼,它當然可以在PG端:http://sqlfiddle.com/#!1/16e4c/3 – 2013-04-24 15:05:17

+0

你知道你如何在Rails中實現這個功能。我是一個完整的新手入門。謝謝 – swaroopsm 2013-04-24 15:11:59

回答

7

這當然可以創建一個數組Rails 4中的-h-hstore列與例如列規格像這樣在創建表:

t.hstore :properties, :array => true 

然而,有一個在Rails的4.0編碼錯誤,遺憾的是使他們無法使用;基本上你可以從中讀取它們,並且它們正確地表示爲散列數組,但不能寫入。

我已經在https://github.com/rails/rails/issues/11135上打開了一個問題(帶有修補程序),希望很快就會收入。

+0

謝謝! 期待Rails團隊將其納入其中。 – swaroopsm 2013-07-05 06:08:56

+0

感謝您使用@inopinatus!你有沒有關於如何將hstore數組作爲字符串傳遞的想法,以便它正確進入數據庫,直到你的補丁成爲Rails的一部分? – 2013-09-14 21:50:42

+0

你的答案似乎與接受的答案在這裏發生衝突:http://stackoverflow.com/questions/22306434/can-i-store-arrays-in-hstore-with-rails你確定這可以做到嗎? – Noz 2014-05-02 20:58:13

相關問題