2
在我的模型Post.rb我有serialize :facts
調用。 我試圖完成的是用戶可以將他們自己的鍵/值對保存到facts
列。當用戶打開/張貼/新頁面時,我希望有三個空的鍵值輸入。然後用戶可以填寫像值:如何使用哈希數組使用ActiveRecord的序列化?
[color ]: [very blue ]
[length of the street ]: [not that long ]
[etcetera ]: [etcetera ]
要建立我使用簡單形式的寶石,並試圖已經使用
= f.simple_fields_for :facts do |ff|
= f.input :key
= f.input :value
只生成一個鍵/值的形式,並將其保存非常好以'事實'字段的YAML格式!但是,當我嘗試添加數組時,它不起作用。它只保存最後一個鍵/值對。
那麼,我知道什麼問題,但不知道如何解決它。
我需要一些可以生成輸入字段的值,例如:post[facts][][key]
和post[facts][][value]
。目前它只能生成三個輸入的post[facts][key]
post[facts][value]
輸入。
你解決了這個問題嗎? –
@RuanCarlos大概我解決了它,但我真的不記得如何。這已經是三年前了:)你可以嘗試在模型中編寫一個自定義串行器。這個串行器可以執行諸如解析所有「密鑰」字段來散列密鑰和所有「值」字段以對與密鑰對應的散列值進行操作。 – Ivan
謝謝伊萬。我手動創建了表單。 –