Когда вы изменяете значение сложного свойства, такого как JSON, через его собственный API (#[] в вашем случае), система отслеживания грязных данных в DM, к сожалению, обходится, что означает, что ваш ресурс не будет помечен как грязный. Это не тривиальная проблема, но рано или поздно она будет решена.
На данный момент в качестве обходного пути вы можете переопределить все значение мета-свойства и увеличить значение post_count, например:
self.parent.meta = parent.meta.merge("post_count" => parent.meta.fetch("post_count", 0)+1)
Я понимаю, что это выглядит некрасиво, но сейчас нет другого способа сделать это. Вы можете инкапсулировать этот код в такой метод, как increment_post_count
, чтобы сделать его правильным.
Кроме того, обратите внимание, что вы должны использовать строковые ключи, а не символы.
person
solnic
schedule
24.05.2011