Passing optionale Argumente durch eine Wrapper-Methode in Rails
-
19-09-2019 - |
Frage
Ich habe folgendes Wrappermethode für link_to
:
def link_to_with_current(text, link, condition, *args)
current_class = condition ? 'current' : nil
link_to text, link, :class => current_class, *args
end
Wenn Sie mit dieser Probe genannt:
link_to_with_current 'My Link', '/mylink.html', true, :id => 'mylink'
Der folgende Link wird generiert:
<a href="/mylink" class="current">My Link</a>
Warum nicht die ID angezeigt?
Lösung
Dank theIV Vorschlag fand ich eine Version, die funktioniert:
def link_to_with_current(text, link, condition, *args)
options = args.first || {}
options[:class] = condition ? 'current' : nil
link_to text, link, options
end
Lizenziert unter: CC-BY-SA mit Zuschreibung
Nicht verbunden mit StackOverflow