Question

Je remarque que crée Yii ensemble étrange de répertoires (noms comme 8523d23 ou 10s89b92) dans le répertoire des actifs, et cela se produit même lors de l'exécution. Par exemple, un de mes tableaux a obtenu plus de 10 enregistrements, en pagination et coups de pied j'ai reçu un nouveau fichier de l'actif sous-répertoire nommé pager.css.

Quand je déplace mon site de test à la production, devrais-je copier tous ceux, ou tout simplement créer un répertoire vide « actifs », et il sera rempli lors de l'exécution?

Si je veux ajouter, par exemple, un nouveau plugin jQuery, comment dois-je procéder?

Par exemple, je voudrais ajouter jquery.charcounter.js, dois-je le copie aux actifs ou aux yii/framework/web/js/source? Si je fais ce dernier, comment puis-je obtenir ce fichier .js inclus dans la sortie de la page HTML?

Était-ce utile?

La solution

assets doit être un répertoire inscriptible. Yu prend en charge des actifs.

En appelant Yii::app()->assetManager->publish() quelques feuilles de style, images, scripts, ou même des répertoires entiers peuvent être mis dans un dossier visible web.

pager.css et d'autres fichiers non familiers sont produits par des widgets (CLinkPager par exemple) et d'autres composants (tels que CClientScript publie jQuery chaque fois que vous avez besoin que).

Au cours du déploiement, ce dossier doit être vide, mais il n'a pas vraiment d'importance.

Ajout de plug-ins ne doivent jamais se faire dans les dossiers-cadres. Vous pouvez les placer soit dans components dir et publier exécution si nécessaire, ou dans tout autre répertoire visible pratique (comme en images ou css).

Mise à jour

Pour incorporer jquery.charcounter.js, le mettre dans le répertoire components, puis appelez

Yii::app()->clientScript->registerScriptFile(
    Yii::app()->assetManager->publish(
        Yii::getPathOfAlias('application.components').'/jquery.charcounter.js'
    ),
    CClientScript::POS_END
);

En ce qui concerne les noms de dossiers étranges, je crois fermement qu'ils sont uniques hash (ou une partie), afin qu'ils puissent être différenciés si l'application utilise plusieurs extensions.

Autres conseils

résoudrait la question car cela fournit une explication détaillée du dossier actif:

http://www.yiiframework.com/wiki/148/understanding-assets /

Licencié sous: CC-BY-SA avec attribution
Non affilié à StackOverflow
scroll top