Forum: Rails France Template engine

Announcement (2017-05-07): www.ruby-forum.com is now read-only since I unfortunately do not have the time to support and maintain the forum any more. Please see rubyonrails.org/community and ruby-lang.org/en/community for other Rails- und Ruby-related community platforms.
5d3f7d8e534a892e3029a3f3b9761de5?d=identicon&s=25 Joel Azemar (Guest)
on 2009-04-06 15:14
(Received via mailing list)
Bonjour,

Je cherche a régler une problématique d'indépendance de la couche
présentation. Je m'explique. je veux pour la même logique métier des
présentations différentes, de la structure HTML/ERB au CSS en passant
pas les images. Alors j'ai regardé coté Engine template pensant
trouver une solution mais apparemment ça ne réponds pas a mon
problème.

Y en a t-il parmi vous qui ont déjà résolue cette problématique et
comment ?

J'ai pensé à positionner le nom d'un répertoire et modifier les
chemins au lancement de l'appli, ça pourrait marcher ...

{RAILS_ROOT}/app/views/{my_path}/
{RAILS_ROOT}/public/stylesheets/{my_path}/
{RAILS_ROOT}/public/images/{my_path}/
{RAILS_ROOT}/public/javascripts/{my_path}/

des idées ou retours d'expériences ?

merci.
2fd0206c71a1b22a9cc6293f38537461?d=identicon&s=25 Cyril Mougel (shingara)
on 2009-04-06 15:37
(Received via mailing list)
Joel Azemar wrote:
> comment ?
>
> J'ai pensé à positionner le nom d'un répertoire et modifier les
> chemins au lancement de l'appli, ça pourrait marcher ...
>
> {RAILS_ROOT}/app/views/{my_path}/
> {RAILS_ROOT}/public/stylesheets/{my_path}/
> {RAILS_ROOT}/public/images/{my_path}/
> {RAILS_ROOT}/public/javascripts/{my_path}/
>
> des idées ou retours d'expériences ?
Quel est la variable qui fait changé ton path ? ca dépend de
l'utilisateur ou d'une conf en admin ?

Car tu as la gestion de theme de Typo que tu peux étudier. Si j'ai le
temps promis je la déplace en Rails::Metal :)


--
Cyril Mougel
http://blog.shingara.fr
5d3f7d8e534a892e3029a3f3b9761de5?d=identicon&s=25 Zaphod Beeblebrox (Guest)
on 2009-04-06 16:00
(Received via mailing list)
ça serait clairement une conf admin. Je ne sais pas encore où
et
comment changer le path mais ça doit sûrement pouvoir se modifier.

Je regard les sources de Typo merci.
5d3f7d8e534a892e3029a3f3b9761de5?d=identicon&s=25 Zaphod Beeblebrox (Guest)
on 2009-04-07 13:06
(Received via mailing list)
Dans Typo la notion de template ne dépasse pas les CSS ?! La structure
des vues restent la même si j'ai bien compris ?
5d3f7d8e534a892e3029a3f3b9761de5?d=identicon&s=25 Zaphod Beeblebrox (Guest)
on 2009-04-07 13:13
(Received via mailing list)
J'aurai bien vue un système comme Engine, les vues présentent dans le
plugin sont chargées et utilisées à part si on les surchargent dans
l'application principale, finalement je me dis que c'est exactement le
mécanisme que je cherche.

Des idées ? Des personnes ayant mis ça en place ?

merci.
2fd0206c71a1b22a9cc6293f38537461?d=identicon&s=25 Cyril Mougel (shingara)
on 2009-04-07 14:19
(Received via mailing list)
Zaphod Beeblebrox wrote:
> Dans Typo la notion de template ne dépasse pas les CSS ?! La structure
> des vues restent la même si j'ai bien compris ?
>
non, ça permet de tout modifier.

toutes les vues et on peux aussi ajouter des helpers spécifiques.

--
Cyril Mougel
http://blog.shingara.fr
5d3f7d8e534a892e3029a3f3b9761de5?d=identicon&s=25 Zaphod Beeblebrox (Guest)
on 2009-04-07 14:30
(Received via mailing list)
Bon faut je regard ça de plus près ...

Sinon rien à voir avec le schmibilik mais je suis en Ruby 1.8.7 avec
MacPort et l'installation de Typo génère une exception
particulièrement déroutante :
[BUG] cross-thread violation on rb_gc()
ruby 1.8.6 (2008-03-03) [universal-darwin9.0]

En recherchant sur google j'ai enfin trouvé le problème il semble que
de friser les gems avec une version de Ruby pose souci
http://www.merbing.com/2008/10/15/bug-cross-thread...

I was having this weird issue for sometime when starting Merb in a
frozen app and I was even using ruby 1.8.6:

[BUG] cross-thread violation on rb_gc()
ruby 1.8.2 (2004-12-25) [universal-darwin8.0]
Abort trap

Google didn't help me, then I remember about the new 'thor
merb:gems:redeploy' task that recompile gems on the target platform
and gave it a shot, resulting:

Building native extensions. This could take a while...
Successfully installed do_mysql-0.9.6
Building native extensions. This could take a while...
Successfully installed fastthread-1.0.1
Building native extensions. This could take a while...
Successfully installed hpricot-0.6.161
Building native extensions. This could take a while...
Successfully installed mongrel-1.1.5

Fastthread was probably compiled with the original OSX Ruby 1.8.2
resulting in this [BUG]!?

Awesome, I have my merb app working again in my dev box. Now updating
it to work with Merb RC1 and new merb-auth.

Thanks thor!

En supprimant les gems de vendor et les réinstallant ça a marché ...
5d3f7d8e534a892e3029a3f3b9761de5?d=identicon&s=25 Zaphod Beeblebrox (Guest)
on 2009-04-07 16:15
(Received via mailing list)
Bon je tente une approche :

Dans mon controller j'indique ceci

  def show
    @user = current_user
    respond_to do |format|
      format.html { render render_template_view
('users','show.html.erb') }
    end
  end

Et dans ApplicationController

protected

  def render_template_view(controller_name,view_name)
    template_view = File.join(RAILS_ROOT, File.join("app",
    File.join("views",
    File.join("templates",
    File.join(@configuration.path_design,
    File.join(controller_name,view_name))))))
    if File.exist?(template_view)
      return File.join("templates", File.join
(@configuration.path_design, File.join(controller_name,view_name)))
    else
      return File.join(controller_name,view_name)
    end
  end

  def find_configuration
    @configuration = (session[:configuration] ||= Configuration.first)
  end

ça me permet de surcharger les vues que je veux modifier ... ça vaut
ce que ça vaut ... ça marche en tout cas. Je suis preneur de critiques
ou autre méthodes

Merci.
This topic is locked and can not be replied to.