/** * Create yaml files from database data. * * Usage (from command line): * * php oil r dbfixt:generate [-n=5] [-o=/tmp] <table1> [<table2> [...]] * * @return string */ public static function generate() { $num = Cli::option('n') ? (int) Cli::option('n') : 5; $dir = Cli::option('o'); if (is_null($dir)) { $dir = APPPATH . 'tests/fixture'; if (!is_dir($dir)) { mkdir($dir); } } else { if (!is_dir($dir)) { return Cli::color('No such directory: ' . $dir, 'red'); } } $args = func_get_args(); foreach ($args as $table) { if (DBUtil::table_exists($table)) { $result = DB::select('*')->from($table)->limit($num)->execute(); $data = $result->as_array(); static::setToYaml($dir, $data, $table); } elseif (Mongo_Db::instance()->get_collection($table)) { $mongo = Mongo_Db::instance(); $data = $mongo->limit($num)->get($table); static::setToYaml($dir, $data, $table); } else { echo Cli::color('No such table: ' . $table, 'red') . PHP_EOL; } } }
public static function nice() { if (Fuel::$env === Fuel::PRODUCTION) { return Cli::color('ENV = PRODUCTION can not use nice.', 'red'); } \Model_Migrate_MigrateRun::all_down(); \Model_Migrate_MigrateRun::all_up(); \Model_Migrate_MigrateRun::all_nice(); return Cli::color(self::$msg . 'nice - Table create & insert test data', 'green'); }