Я конвертирую шаблон электронной почты из Rails в Mandrill, контент для которого требует достаточного количества данных, некоторые из которых вложены через несколько ассоциаций.Отправка объекта в качестве переменной в Mandrill через Rails
Поэтому я хотел бы передавать объекты с помощью global_merge_vars Mandrill, такие как (упрощенный) следующим:
[{ 'name'=>'order', 'content'=> @order.to_json(include:
{ user: { only: :first_name } },
methods: [:method1,
:method2,
:method3,
:method4])
}]
, который проходит через к шаблону Mandrill под order
переменной примерно следующим образом:
{"id":11,"number":"xxxx","item_total":"112.0"...
"user":{"first_name":"Steve"},"method1":"£0.00","method2":"£112.00",
"method3":"£112.00","method4":"£0.00"}
проблема заключается в том, что я не могу ничего открыть в order
(с помощью рулей), т.е. {{order.id}}
, {{order['id']}}
и т.д. не будут работать.
Невозможно разбить данные на большое количество переменных, так как некоторые элементы являются коллекциями и их ассоциациями.
Я считаю, что проблема возникает, как все строковой, когда переменные компилируются для Mandrill - поэтому нарушая объект JSON - со следующего фрагмента кода того, что передается по:
"global_merge_vars"=>[{"name"=>"order", "content"=>"{\"id\":11,
\"number\":\"xxxx\",\"item_total\":\"112.0\"...
Я могу» t, похоже, найдет какую-либо документацию/предложения для решения этой проблемы, поэтому мне интересно, можно ли передавать данные такого рода, и если да, то как правильно передать ее, чтобы иметь возможность доступа к объектам в шаблоне Mandrill. Любой совет очень оценили!
Steve.
вы можете получить доступ к нему, как '| * переменной * |' –
Спасибо @pitabasprathal, я использую синтаксис Handlebar вместо этого - было бы что-то изменить? – SRack