у меня есть рецепт, который петли через кучу данных, определенных в атрибутах:Как разделить код между рецептами
node["repos"].each do |repo, data|
...do stuff...
end
секция ...do stuff...
довольно долго, и я хотел бы повторно использовать его в нескольких рецепты, с той лишь разницей, что данные, установленные в атрибутах, различны.
Я попытался двигаться внутри цикла к другому рецепту, и в том числе это так:
node["repos"].each do |repo, data|
include_recipe "other_recipe"
end
Но когда он пытался бежать other_recipe
, переменная data
не существует.
Что такое «правильный» способ обмена кодами между рецептами?
Такого рода вещи могут быть работоспособным, но это очень продвинутая техника, и я бы не рекомендовал его новым пользователям из ворот :) много как это может пойти не так с минимальной обратной связью, поскольку вы в основном обходите самого шеф-повара и используете его как API-интерфейс Ruby. – coderanger
Создание настраиваемого ресурса требует еще больших проблем. –
Добавление этой строки в 'metadata.rb' только для того, если вы хотите использовать эту библиотеку из другой кулинарной книги, правильно? Если я хочу использовать его в нескольких рецептах в одной и той же кулинарной книге, я предполагаю, что мне это не понадобится. – PortMan