2010-01-08 16 views
5

L'idée serait de remplacer ERB avec des modèles qui sont purs XHTML et que la vue serait le code pur manipulant le contenu du modèle.Existe-t-il un équivalent Ruby de Wicket de Java?

Avez-vous déjà fait cela?

+0

vous devez ajouter une étiquette de rails. et j'inclurais l'expression "technologie de vue de substitution". Alors cette belle question sera mieux trouvée. – Karussell

Répondre

2

Il y avait Lilu par Yuri Rashkovskii, mais il n'est plus maintenu. C'est still available, cependant, donc si vous êtes intéressé, vous pouvez le maintenir vous-même. (Il est très peu de code, en fait, et la partie de template proprement dite n'a pas besoin de changer de toute façon.) ne doit pas changer est l'intégration dans le moteur de vue Rails, et cela devrait être assez trivial, maintenant que Rails 3 ne fait ont un moteur vue appropriée.)

un système plus récent qui tire parti data- attributs HTML5, est RuHL par Andrew Stone. Voici un aperçu rapide (volé du site Web):

<!-- view.html --> 
<html> 
    <body> 
    <p data-ruhl="say_hello"/> 
    </body> 
</html> 

# model.rb 
def say_hello 
    "Hello World" 
end 

<!-- result.html --> 
<html> 
    <body> 
    <p>Hello World</p> 
    </body> 
</html> 
0

Je ne sais pas si cela est exactement ce que vous voulez dire, mais la moustache sons similaires:

http://github.com/defunkt/mustachehttp://www.rubyinside.com/mustache-for-logicfree-views-in-your-ruby-web-apps-2599.html

+0

est Mustache dans la ligne de ce que je cherche, mais le {{}} #Section blachblach {{/ section}} semble "pas si gentil" par rapport au style Wicket:

blachabach
Toute chance d'avoir un Moustache basé XHTML comme système de modèle? Avoir une "notation alternative" disponible dans Moustache? – rodrigob

2

Trellis est une tentative de création d'une structure de composant dans Ruby. Il emprunte plus de Tapestry, mais devrait avoir des similitudes avec Wicket. http://www.trellisframework.org/

+0

pourrait-il être utilisé dans les rails ou fournit-il des méthodes db seul? – Karussell

+0

Je crois qu'il est destiné à fonctionner de manière autonome, c'est-à-dire en remplacement de Rails. Ce serait cool si elle était branchée sur le framework Rack comme Sinatra. –