У меня есть модель Rails, которая имеет столбец базы данных типа "json":
create_table "games", force: true do |t|
t.json "game_board"
t.datetime "created_at", null: false
t.datetime "updated_at", null: false
end
Отлично! Теперь, как я могу его использовать? Действительно ли это так просто, как обрабатывать поле как Hash
?
self.game_board[:player1] = 1
self.game_board[:cards] = cards.to_hash
Если бы я должен был написать это, все будет работать так, как ожидалось, поэтому в будущем вызове API от клиента я мог бы это сделать:
self.game_board[:player] # And get back the 1 that I put here before
Как насчет производительности? Будет ли все game_board
десериализоваться каждый раз, даже если это поле никогда не читается? Будет ли переписываться поле (IOW database write) каждый раз, когда я меняю часть "Хеша?"