J'ai rencontré un gros problème en déplaçant mon application vers Rails 3. J'ai un assistant de vue que j'appelle 'WidgetHelper'. Cela aide à rendre certains partiels automatiquement quand je me réfère à lui. Par exempleRails 3 widget assistant partiel
<%= widget('loginbox', :global => true) %>
Mais cela ne fonctionne pas correctement. Il rend le code HTML comme je le veux, mais échappe à la valeur de retour, ce qui n'est pas attendu. Comment puis-je dire à rendre (ou à quelque chose) à pas échapper la valeur de retour pour moi?
Voici mon code:
def widget(widget, options={})
begin
unless options[:fullpath]
render :partial => widget_path(widget, options[:global])
else
render "widgets/#{widget}"
end
rescue ActionView::MissingTemplate
"<!-- widget: #{widget.inspect}, #{options.inspect} -->"
end
end
Merci, cela fonctionne bien. J'ajoute un score pour vous et pour @Jamie Wong aussi, parce que j'ai utilisé les deux solutions dans mon application. –
Cela semble un peu en arrière dans mon esprit - quand voulez-vous jamais un widget sans cru? Spécifier que vous voulez le brut devrait faire partie de la définition dans mon esprit, pas l'invocation. –
Vous avez raison Jamie. Fix à venir. – edgerunner