Browse Source

Add use base controller statement on generated controller with parent

tags/0.1.0
Nafies Luthfi 8 years ago
parent
commit
792dff3d46
  1. 17
      src/CrudMake.php
  2. 1
      tests/Generators/ControllerGeneratorTest.php
  3. 2
      tests/Generators/RouteWebGeneratorTest.php

17
src/CrudMake.php

@ -324,9 +324,20 @@ class CrudMake extends Command
$controllerFileContent = $this->replaceStubString($stub);
if (! is_null($parentName = $this->option('parent'))) {
$searches = [
'App\Http\Controllers;',
"use {$this->modelNames['full_model_name']};\n"
];
$replacements = [
"App\Http\Controllers\\{$parentName};",
"use {$this->modelNames['full_model_name']};\nuse App\Http\Controllers\Controller;\n"
];
$controllerFileContent = str_replace(
'App\Http\Controllers',
'App\Http\Controllers\\'.$parentName,
$searches,
$replacements,
$controllerFileContent
);
}
@ -458,7 +469,7 @@ class CrudMake extends Command
$webRouteFileContent = str_replace(
$pluralModelName.'Controller',
$parentName.'/'.$pluralModelName.'Controller',
$parentName.'\\'.$pluralModelName.'Controller',
$webRouteFileContent
);
}

1
tests/Generators/ControllerGeneratorTest.php

@ -213,6 +213,7 @@ class CategoriesController extends Controller
namespace App\Http\Controllers\Projects;
use App\Entities\References\Category;
use App\Http\Controllers\Controller;
use Illuminate\Http\Request;
class CategoriesController extends Controller

2
tests/Generators/RouteWebGeneratorTest.php

@ -29,7 +29,7 @@ Route::apiResource('{$this->table_name}', '{$this->plural_model_name}Controller'
$this->assertFileExists($routeWebPath);
$routeWebFileContent = "<?php
Route::apiResource('{$this->table_name}', 'Projects/{$this->plural_model_name}Controller');
Route::apiResource('{$this->table_name}', 'Projects\\{$this->plural_model_name}Controller');
";
$this->assertEquals($routeWebFileContent, file_get_contents($routeWebPath));
}

Loading…
Cancel
Save