Как установить значение вложенных свойств для объекта FacebookAds::AdSet
В настоящее время я использую https://github.com/facebook/facebook-ruby-business-sdk для управления рекламой в Facebook.
Я написал метод для обновления FacebookAds::AdSet
объект.
# Fetch the adset
adset = FacebookAds::AdSet.get(source_adset_id, session)
# Set the new name
adset.name = 'Test name'
# Save the Adset
adset.save
Это работает и устанавливает имя, но если я попытаюсь установить вложенное свойство следующим образом:
adset = FacebookAds::AdSet.get(source_adset_id, session)
# Set the new minimum age
adset.targeting.age_min = 20
# this is the adset's new min age (should be 20)
p adset.age_min
#=> 18
# Save the Adset
adset.save
Когда я установил adset.targeting.age_min
значение никогда не устанавливается, это относится ко всем вложенным значениям, которые я пытаюсь установить.
Я устанавливаю это значение неправильно? Есть ли другой способ подойти к этому?
1 ответ
Я думаю, что их драгоценность не позволяет обновить атрибуты ребенка.
Мой обходной путь - создание хэша таргетинга следующим образом:
targeting = {
age_min: 20
}
Как только вы создали свой хеш, просто установите его для объекта следующим образом:
adset.targeting = targeting
И наконец:
adset.save