metodo __init () deprecato di litio (), deve essere chiamato manualmente
Domanda
Recentemente aggiorno la libreria di litio e ho questo problema. Ottengo questo errore:
Deprecated `app\models\StoreCategories::__init()` method, needs to be called it manually.
Source
/works/minhna/public_html/cmp/v0/Library/LITHIUM/Core/Library.php: 505
500
501 if ($path && include $path) {
502 static::$_cachedPaths[$class] = $path;
503 if (method_exists($class, '__init')) {
504 $msg = "Deprecated `{$class}::__init()` method, needs to be called it manually.";
505 throw new RuntimeException($msg);
506 }
507 } elseif ($require) {
508 throw new RuntimeException("Failed to load class `{$class}` from path `{$path}`.");
509 }
510 }
.
Nel modello StoreCategories, ho una funzione semplice
public static function __init(array $options = array()){
static::config($options);
static::applyFilter('save', function ($self, $params, $chain) {
if(!$params['entity']->_id){
//set created date
$params['entity']->created = strtotime(gmdate('Y-m-d H:i:s'));
}
}
}
.
Io uso compositore e nella libreria boostrap.php, carico la libreria Li3_SocialAuth:
/**
* load the socialauth library
*/
Libraries::add('li3_socialauth');
// Add the composer autoloader if not already done
require_once(LITHIUM_LIBRARY_PATH . '/autoload.php') ;
.
Grazie in anticipo.
Soluzione
Litioè sbarazzato di__init()inoggetti statici, vedere
Autorizzato sotto: CC-BY-SA insieme a attribuzione
Non affiliato a StackOverflow