private function modificarPlantillaModel($tables, $connection) { $this->info($this->messages['search_tables']); foreach ($tables as $table) { $this->info($this->messages['model_table'] . $table->TABLE_NAME); //class name $class_name = ucfirst(camel_case(Helper::strSingularSpanish($table->TABLE_NAME))); $baseString = File::get(app_path($this->directories['model_template'])); //replace class name.. $baseString = str_replace('@class_name@', $class_name, $baseString); //replace connection.. $baseString = str_replace('@connection@', $connection, $baseString); //replace table name.. $baseString = str_replace('@table_name@', $table->TABLE_NAME, $baseString); //replace pretty name.. $baseString = str_replace('@pretty_name@', $table->TABLE_NAME, $baseString); //find columns. // $columns = $table->columns()->whereNotIn('COLUMN_NAME', static::$common_hidden)->get(); $columns = Table::getColumns($table->TABLE_NAME, static::$common_hidden); //generate primary key $baseString = str_replace('@primary_key@', $this->generarPrimary($columns), $baseString); //generate fillable $baseString = str_replace('@fillable@', $this->generarFillable($columns), $baseString); //generate pretty fields string. $baseString = str_replace('@pretty_fields@', $this->generarPrettyFields($columns), $baseString); //generate table fields string. $baseString = str_replace('@table_fields@', $this->generarFillable($columns), $baseString); //generate rules.. $baseString = str_replace('@rules@', $this->genenarRules($columns), $baseString); //generate belongs to.. $baseString = str_replace('@belongs_to@', $this->generarBelongsTo($columns), $baseString); File::put(app_path($this->directories['models'] . DIRECTORY_SEPARATOR . $class_name . '.php'), $baseString); } return; }