2013-05-17 1 views
1

J'essaie de comprendre comment je peux avec la bibliothèque de ressources d'Anthony Male qui est également utilisée pour PyroCMS pour charger certains actifs uniquement via les contrôleurs de mon modèle.Injecter des fichiers au modèle du contrôleur

J'ai un modèle qui charge des fichiers spécifiques et selon le contrôleur comme le contrôleur de connexion, j'en aurai besoin pour injecter le fichier login.js en bas du pied de page qui sera chargé à la fin du modèle.

Des idées?

+1

Avez-vous lu la documentation? http://docs.pyrocms.com/2.1/manual/developers/tools/assets – Jeemusu

+0

Oui J'ai Ai-je manqué quelque chose? –

+0

Près du début du lien ci-dessus, sous l'utilisation de base: Définissez les fichiers dans le contrôleur en utilisant 'Asset :: js ('myfile.js');'. Ensuite, faites-les écho dans la vue en utilisant 'echo Asset :: render_js();' – Jeemusu

Répondre

1

Citant la documentation officielle de la bibliothèque d'actifs Anthony Homme, qui se trouve ici: http://docs.pyrocms.com/2.1/manual/developers/tools/assets

fichiers Javascript peuvent être ajoutés dans votre contrôleur en utilisant ce qui suit, où myfile.js est le fichier javascript que vous voulez à inclure, et se trouve à assets/js/myfile.js.

// Will add assets/js/myfile 
Asset::js('myfile.js'); 

// Will add assets/admin/js/myfile.js 
Asset::js('admin::myfile.js'); 


Par défaut, Asset rapetisser ces deux fichiers et les combiner en un seul fichier (qui est écrit à l'actif/cache/.js). Pour inclure ce fichier dans votre page, utilisez ce qui suit à votre vue:

echo Asset::render_js(); 
+0

Merci. Même sujet question différente. http://stackoverflow.com/questions/16638002/correctly-locating-asset-file-with-asset-library –

1

vous demandez le bas du pied de page mais ma réponse vous sera utile. J'utilise la bibliothèque de biens mais pas la vôtre juste avec le semblable et c'est comment je le manipule;

dans mon contrôleur;

/** 
* Global header variable for header view 
* 
* @var array 
* @access protected 
*/ 
protected $header = array(); 

public function __construct() { 
    // it returns like : <script type="text/javascript" src="http://domain.com/assets/js/jquery-min.js"></script> 
    $this->header["jses"][] = js("jquery-min.js"); 
    $this->header["jses"][] = js("jquery.autogrow-textarea.js"); 
} 

public function index() { 
    // some code here 
    $this->load->view("header",$this->header); 
    // other views 
} 

dans ma vue d'en-tête;

<?php foreach ($jses as $js) echo $js; ?> 
Questions connexes