Skip to content

Commit

Permalink
formatting
Browse files Browse the repository at this point in the history
  • Loading branch information
taylorotwell committed Nov 5, 2021
1 parent 397de40 commit 8fbfc9f
Show file tree
Hide file tree
Showing 2 changed files with 35 additions and 12 deletions.
2 changes: 1 addition & 1 deletion src/Illuminate/Foundation/Console/ModelMakeCommand.php
Original file line number Diff line number Diff line change
Expand Up @@ -206,7 +206,7 @@ protected function getOptions()
['pivot', 'p', InputOption::VALUE_NONE, 'Indicates if the generated model should be a custom intermediate table model'],
['resource', 'r', InputOption::VALUE_NONE, 'Indicates if the generated controller should be a resource controller'],
['api', null, InputOption::VALUE_NONE, 'Indicates if the generated controller should be an API controller'],
['requests', 'R', InputOption::VALUE_NONE, 'Create a new FormRequest class and use it in resource controller'],
['requests', 'R', InputOption::VALUE_NONE, 'Create new form request classes and use them in the resource controller'],
];
}
}
45 changes: 34 additions & 11 deletions src/Illuminate/Routing/Console/ControllerMakeCommand.php
Original file line number Diff line number Diff line change
Expand Up @@ -199,23 +199,21 @@ protected function parseModel($model)
*/
protected function buildFormRequestReplacements(array $replace, $modelClass)
{
$storeRequestClass = $updateRequestClass = 'Request';
$namespace = 'Illuminate\\Http';
[$namespace, $storeRequestClass, $updateRequestClass] = [
'Illuminate\\Http', 'Request', 'Request',
];

if ($this->option('requests')) {
$storeRequestClass = 'Store'.class_basename($modelClass).'Request';
$this->call('make:request', [
'name' => $storeRequestClass,
]);
$updateRequestClass = 'Update'.class_basename($modelClass).'Request';
$this->call('make:request', [
'name' => $updateRequestClass,
]);
$namespace = 'App\\Http\\Requests';

[$storeRequestClass, $updateRequestClass] = $this->generateFormRequests(
$modelClass, $storeRequestClass, $updateRequestClass
);
}

$namespacedRequests = $namespace.'\\'.$storeRequestClass.';';
if ($storeRequestClass != $updateRequestClass) {

if ($storeRequestClass !== $updateRequestClass) {
$namespacedRequests .= PHP_EOL.'use '.$namespace.'\\'.$updateRequestClass.';';
}

Expand All @@ -233,6 +231,31 @@ protected function buildFormRequestReplacements(array $replace, $modelClass)
]);
}

/**
* Generate the form requests for the given model and classes.
*
* @param string $modelName
* @param string $storeRequestClass
* @param string $updateRequestClass
* @return array
*/
protected function generateFormRequests($modelClass, $storeRequestClass, $updateRequestClass)
{
$storeRequestClass = 'Store'.class_basename($modelClass).'Request';

$this->call('make:request', [
'name' => $storeRequestClass,
]);

$updateRequestClass = 'Update'.class_basename($modelClass).'Request';

$this->call('make:request', [
'name' => $updateRequestClass,
]);

return [$storeRequestClass, $updateRequestClass];
}

/**
* Get the console command options.
*
Expand Down

0 comments on commit 8fbfc9f

Please sign in to comment.