Bonjour,

Je suis désespéré car je ne comprends pas pourquoi ca ne fonctionne pas ?

PHP 12. include() /Users/Sites/qq/lib/Cake/Core/App.php:545
Fatal Error Error: Class 'Model' not found in [/Users/Sites/qq/app/Model/AppModel.php, line 41]
2014-02-09 19:41:41 Error: Class 'Model' not found in [/Users/Sites/qq/app/Model/AppModel.php, line 41]

Sur un framework fraichement installé, ca marche, mais avec une application deja faite

J'ai une deuxieme question, ou mettre ce bout de code ?

Configure::write('Config.language', 'fre');

J'imagine que c'est dans le core.php, mais bon ce n'est pas explicite dans la doc.

5 réponses


Pourrais-tu montrer ce que tu as à la ligne 41 de ton AppModel.php ?
Ensuite, tu peux très bien le mettre dans le bootstrap.php pour le Configure::write().
Et puis, c'est fra maintenant et non fre.

sylvain
Auteur

Le voici

<?php
/* SVN FILE: $Id: app_model.php 6311 2008-01-02 06:33:52Z phpnut $ */
/**
 * Application model for Cake.
 *
 * This file is application-wide model file. You can put all
 * application-wide model-related methods here.
 *
 * PHP versions 4 and 5
 *
 * CakePHP(tm) : Rapid Development Framework <http://www.cakephp.org/>
 * Copyright 2005-2008, Cake Software Foundation, Inc.
 * 1785 E. Sahara Avenue, Suite 490-204
 * Las Vegas, Nevada 89104
 *
 * Licensed under The MIT License
 * Redistributions of files must retain the above copyright notice.
 *
 * @filesource
 * @copyright Copyright 2005-2008, Cake Software Foundation, Inc.
 * @link http://www.cakefoundation.org/projects/info/cakephp CakePHP(tm) Project
 * @package cake
 * @subpackage cake.app
 * @since CakePHP(tm) v 0.2.9
 * @version $Revision: 6311 $
 * @modifiedby $LastChangedBy: phpnut $
 * @lastmodified    $Date: 2008-01-02 00:33:52 -0600 (Wed, 02 Jan 2008) $
 * @license http://www.opensource.org/licenses/mit-license.php The MIT License
 */
/**
 * Application model for Cake.
 *
 * Add your application-wide methods in the class below, your models
 * will inherit them.
 *
 * @package cake
 * @subpackage  cake.app
 */
class AppModel extends Model{
    /**
     * overload the invalidate method so it translate error messages
     *
     * @param string $field
     * @param mixed $value
     */
    function invalidate($field, $value = true) {
        return parent::invalidate($field, __($value));
    }
}
?>

Elle date de 2008 ton application ?
Ensuite ce que je ne comprend pas, c'est qu'elle est ta manip.
Tu as voulu mettre tout le contenu de ton dossier app d'une ancienne application dans une autre et du coup elle utilise une librairie cakephp différente ?

sylvain
Auteur

Non je pense pas, elle est sortie avec cakephp 2.3.9
J'ai laissé l'application telle quelle ,

J'ai voulu faire un console cake i18n extract pour obtenir le fichier .pot car l'application n'existe pas en français
J'aurais pu aussi éditer le po existant, mais Poedit sur mac me dit qu'il y a des erreurs en doublon sans que je ne puisse les modifier

CakePHP à la base n'est pas en français.
Ensuite si tu regardes bien dans le fichier, il y a 2008 comme date, tu ne m'as toujours pas dit si c'est une ancienne librairie de CakePHP ou une récente qu'utilise cette application.
À mon avis, vu la date dans le commentaire et qu'il y a marqué app_model.php dans ce même commentaire, c'est d'une version dans les 1.3, tu vas donc avoir des problème de syntaxe dans le code PHP.