Anya is live and ready to show you everything. Watch her strip, dance, and perform exclusive shows just for you. Interact in real-time and make your fantasies come true.
✓ Live Streaming✓ Interactive Chat✓ Private Shows✓ HD Quality
Anya is LIVE right now
FREE
Free to watch • No registration required • HD streaming
Enregistrer les champs suplémentaires dans une relation HABTM
Afin d'enregistrer les valeurs dans un ou plusieurs champs d'une table de jointure on procède par ajouter un tableau à $this->data qui a comme nom le nom du model de jointure ex: $this->data['PostsTag'], puis dans ce tableau on insère le ou les éléments tel que suivant :
/* $tags est un tableau contenant les valeurs du/des Tag reçu par la vue, un tableau a été utiliser pour des raisons de simplicité, biensur il faut adapter l'exemple à votre cas */
remarque on a pas ajouter la clé étrangère du Post à savoir post_id dans $this->data['PostsTag'] vue que l'id du Post n'est pas encore disponible, au moment de l'enregistrement Cake va l'ajouter ;)
Anya is live and ready to show you everything. Watch her strip, dance, and perform exclusive shows just for you. Interact in real-time and make your fantasies come true.
✓ Live Streaming✓ Interactive Chat✓ Private Shows✓ HD Quality
Anya is LIVE right now
FREE
Free to watch • No registration required • HD streaming
Enregistrer les modifications CSS effectuer sur Firebug dans leur fichiers sources (Cakephp mod)
Note :
Ce tutoriel n'est pas complet, il se peut que j'ai raté un ou deux trucs ou que sa soit pas bien expliquer :p pour toute question veuillez laisser un commentaire ou me contacter a Mohamed MELLOUKI
Une version modifier avec un guide plus complet est planifier et serra héberger dans Github mais pas dans le court terme(pas le temps :) )
English version may be done :Save the modifications done in Firebug in there CSS source files
Donc on commence :
- installer le module complémentaire FireFile in Firefox.
- Télécharger le script serveur depuis https://github.com/tobiasstrebitzer/FireFile-Server .
- tutoriel principal pour la mettre en place de FireFile : https://addons.mozilla.org/en-US/firefox/addon/firefile/ (vérifier les images)
- Uploader le script FireFile dans le dossier css.
- Donner les autorisations nécessaire a l’exécution du script (chmod 777).
- Exécuter le script depuis votre navigateur (nomdomaine/webroot/css/firefile)
exemple : http:// localhost/exempleapp/webroot/css/firefile
- Configurer un nouveau identifiant et mot de passe.
- Authentifier vous puis rafraichiser la page tout en ouvrant firebug.
- Autoriser le site dans les paramètres de FireFile.
- Tester que les modifications s'enregistre bien dans le fichier source en modifiant un élément de la page de FireFile puis cliquer sur la flèche bleu dans l'onglet firebug->css->firefile
- Si tout ce passe bien continuer le tutoriel sinon assurer vous d'avoir une installe fonctionnel avant de continuer. Dans l'étape suivante on va procéder a la configuration de FireFile afin de le rendre compatible avec Cakephp
- Effectuer un backup du dossier webroot/css.
- Ouvrer le script puis dans la ligne 197 (méthode onActionSaveRoutine) changer :
- Dans un terminal (ssh?) aller dans le dossier css.
- Exécuter la commande suivante : chmod 777 -Rv *
- Dans Config/core.php, si vous utiliser des méthodes de compression, de cache etc.. afin d'optimiser le rendu pour un meilleur score dans page speed, veuillez entourer le tout avec cette condition :
if(Configure::read('debug') == 0) {
// faire des manipulations de compression etc.
Configure::write('Asset.timestamp', true);
@ob_start ('ob_gzhandler');
Configure::write('Asset.filter.css', 'acss.php');
//etc.
}
ceci permet d'utiliser les fichiers sources lors de la phase de développement et pas les fichiers compresser/cache.
- puis vous pouvez procéder a l'utilisation de FireFall dans votre application.
- Une fois l'application est en mode production ( Configure::write('debug', 0); ) enlever le fichier firefall.php et changer les autorisations du dossier et fichiers CSS.
Le système de pagination de Cakephp peut être un atout lorsqu'il est implémenter proprement, il permet un gain de temps non négligeable. Mais j'avais toujours quelque chose à lui reprocher surtout que je l'utilise en Ajax...... Il n'arrive pas a retenir l'index de la page ou j'étais après avoir effectuer une action !
Heureusement qu'une solution existe depuis des lustres (lien en dessous) c'est fait pour Cake 1.2 mais fonctionne sous 1.3 vous n'avez qu'a mettre le code de la page dans un fichier nommer :
pagination_recall.php (a mettre dans le dossier components )
Accéder a des dossiers se trouvant a l'extérieur de App
Il est fréquent qu'on a besoin d'accéder a des dossiers se trouvant à l'extérieur du répertoire de notre Application Cakephp. La solution réside dans webroot/index.
Supposant qu'on a une application se trouvant dans un sous domaine d'un site web. Notre application gère un aspect du site web mère.
Supposant que notre application Cakephp gère l'administration d'un site web de partage d'images.
Les images sont stocker dans un dossier à l'extérieur de notre application Cakephp :
Squelette du site web :
--- siteWebDeGestionDesimages:
|
-------Dossier contenant les scripts
|
-------Dossier contenant du php/etc.
|
-------Dossier contenant du css.
|
-------Dossier contenant les images uploader.
|
-------App
| |----------Controllers etc.
| |----------webroot etc.
pour accéder au dossier contenant les images uploader on aura a ajouter une ligne à notre webroot/index.php (app/webroot/index.php) ou on spécifie le chemin absolue vers le répertoire qui contient les images:
//custom code => spécifie le dossier des images
if(!defined('UPDIR')){
define('UPDIR',DS.'var'.DS.'www'.DS.'siteWebDeGestionDesimages'.DS.'imgup'.DS);
}
//fin
veuillez notez qu'il faut adapter la deuxième partie de la méthode define() suivant l'emplacement de votre répertoire ciblé et qu'il est souhaitable d'utiliser DS à la place de /(slash)
quelque exemple de chemin absolue :
/var/www/ImageSplash/Images/ devient :
DS.'var'.DS.'www'.DS.'ImageSplash'.DS.'Images'.DS
C:/www/ImageSplash/Images/
dans notre Controller on n'aura qu'a utiliser UPDIR comme on l'aura fait pour WWW_ROOT etc.
exemple :
if (move_uploaded_file($this->data['Image']['photo']['tmp_name'],UPDIR.$this->data['Image']['photo']['name'])) {
Anya is live and ready to show you everything. Watch her strip, dance, and perform exclusive shows just for you. Interact in real-time and make your fantasies come true.
✓ Live Streaming✓ Interactive Chat✓ Private Shows✓ HD Quality
Anya is LIVE right now
FREE
Free to watch • No registration required • HD streaming
associate cakephp model to non-cakephp database table
For example if we have a cand table with idCandidat as a primary key, we would create a model that exploit the $useTable & $primaryKey properties :
class Candidat extends AppModel{
var $name = 'Candidats';
var $useTable = 'cand';
var $primaryKey = 'idCandidat';
//etc.
}
Pour ceux qui ont besoin d'un éditeur similaire a Notepad++ dans une distribution Linux (Debian, Ubuntu etc.).
(taper juste les commandes une après l'autre ;) )
Concernant le FTP si vous êtes sous Ubuntu : Fichier => Se connecter à un serveur, puis remplissez les champs nécessaire. Vous trouverez les dossiers du serveur dans l'onglet Réseau.
Edit 11 mai :
Pour compléter les fonctionnalité de gedit installer les modules suivants :
we would get only the Author information/we will get information only from the the Authors table and none from the related tables like publications.
the following code allow us to see the difference :
//only author info
$this->Author->recursive = -1;
$author = $this->Author->findByName('Someone');
//display the result
debug($author);
//get the author and related publications info
$this->Author->recursise = 1;
$authorAndPublications = $this->Author->findByName('Someone');
//display result
debug($authorAndPublications);
exit;
The recursive property then specify how much information do we want from our database.
where should we use it ?
lets suppose each author has at least 10 publications and we want to query the database to find the authors, if we didn't specify the recursive property, Cakephp will get all the authors and their publications too!!
so lets say 50 authors * 10 publications..... you get the picture, we are querying for a ton of unnecessary data...
it mater a lot if it is a high traffic site since for example at each authors list display we query for 500 unnecessary publications informations(that wont be used) just to display some information of the 50 authors in a list/table.
by using recursive = -1; before querying for the authors we ease the strain on the database which result in better reactivity and performance.