同じデータベースと通信する 2 つのアプリがあります。1 つは Ruby on Rails アプリで、もう 1 つは Ruby で作成されたコンソール アプリです。
Rails アプリでは、「notification_settings」という列に保存される一連の設定を保存します。モデルには次のものがあります。
serialize :notification_settings, Hash
これにより、列の値がそのように格納されます
--- !map:ActiveSupport::HashWithIndifferentAccess
test: !map:ActiveSupport::HashWithIndifferentAccess
email: "1"
等
Ruby アプリで同じことを行うと、ハッシュは単純に通常のハッシュとして保存されます。私が何かをしても; (私の Ruby アプリの model.rb で)
hash = HashWithIndifferentAccess.new(self.notification_settings)
hash[:test][:email] = 0
self.update_attribute(:notification_settings, hash)
Rails アプリがレコードを保存するのとまったく同じ方法 (HashWithIndifferentAccess) で、Ruby アプリにレコードを保存させるにはどうすればよいですか?