Bonjour,

Je voudrais savoir ou trouver dans la doc l'equivalent de

<?php echo $this->Html->script('less'); ?>

Il me semble que c'est

<?php echo $this->fetch->('less'); ?>

mais ca ne semble pas fonctionner.

et quoi a remplacé cela ?

//echo $this->Html->css(array('kube.css', 'master.css'));
        echo $this->fetch('meta');
        echo $this->fetch('css');
        echo $this->fetch('script');
    ?>
    <link rel="stylesheet/less" href="<?php echo $this->Html->url('/css/kube.less'); ?>">
    <?php echo $this->Html->script('less'); ?>

Voila ce que je devrais obtenir
http://imperavi.com/kube/start

voila ce que j'obtiens vraiment

13 réponses


echo $this->Html->script('jquery-1.3.2.min');

Voilà ce que j'utilise mais il me semble que tu as plutôt un problème de route :/

bonne continuation.

sylvain
Auteur

Mince, je ne vois pas alors d'ou viendrais le problème. j'ai juste fraichement installé un cakephp et j'ai tout laissé par défaut

as tu charger ton helper Html dans AppController ?

public $helpers = array('Text','Form','Html');

Sinon regarde sur ce lien HtmlHelper ou içi
Fetch

sylvain
Auteur

je lis

"Le Helper html est disponible dans toutes les vues par défaut. Si vous recevez une erreur vous informant qu’il n’est pas disponible, c’est habituellement dû a son nom qui a été oublié de la configuration manuelle de la variable $helpers du controller."

Bon, j'ai finalement ajouté dans appController, mais rien ne change

public $helpers = array('Text','Form','Html','Session','Cache');

Tu héberge sur quoi ?

sylvain
Auteur

sur un serveur en distant,
ce qui est etonnant c'est que certains style marche.
mais pas celui qui concerne la balise <nav id='nav'> et d'autres petits détails

sylvain
Auteur

Est ce qu'il faut definir une route pour chaque controller ?
j'ai actuellement celle ci

Router::connect('/', array('controller' => 'pages', 'action' => 'display', 'home'));
    Router::connect('/pages/*', array('controller' => 'pages', 'action' => 'display'));

Si c'est le cas, je vais devoir creer une route pour mon controller contacts

edit:
je viens de rajouter

Router::connect('/contacts/*', array('controller' => 'contacts', 'action' => 'index'));

aucun changement

sylvain
Auteur

Bon, j'abandonne avec Less, j'ai coller le css et ca marche. Dommage. j'ai perdu pas mal de temps pour ce petit détail

peux tu me donner la structure sur ton serveur :

www/ app / controller
-----------model
-----------webroot

et les .htaccess du dossier www, app, webroot

Quand tu fais des modif sur le cake, remets les fichiers à neuf si ça à rien changé :')

edit: arf tant pis ^^', bonne continuation =')

sylvain
Auteur

En fait ca n'a marque que quand j'ai recuperé le responsive.css ici
http://imperavi.com/kube/start/

sinon le kube.less ne semble pas bien fonctionner. ou je me suis gouré quelques par, mais la ca me parait sioux

Est ce que ton fichier less.js est bien chargé dans ton navigateur? Je te conseille de l'inspecter avec Google inspector (chrome) ou bien firebug (Firefox). J'ai l'impression que tes fichiers "*.less" se chargent bien mais que la librairie less.js ne se chargent pas. Il ne peut pas y avoir modification du style dans ces cas là.

Edit : CakePHP gère les routes en standard avec comme url http://monsite.fr/controller/action/params. Il n'y a pas besoin de créer une route pour chaque action.

sylvain
Auteur

Oui c'est bien chargé, le kube.less fait un import des autres fichiers. et ca semble bien chargé.
Ce qui est étonnant c'est que seul quelques fichiers sont pris en compte. car je vois bien que certains style fonctionne, d'autre pas

Visiblement ils préconisent l'utilisation de Less pour le développement et d'ensuite le compiler en fichier CSS. En tout cas, ce n'est pas normal que cela ne fonctionne pas. Il doit surement exister un logiciel pour compiler less, tu pourras voir si il y a des erreurs et si les différents fichiers less sont présents dans le fichier css final.