Skip to content

Commit b5de434

Browse files
committed
feature #241 make:crud | Improvements (sadikoff)
This PR was merged into the 1.0-dev branch. Discussion ---------- make:crud | Improvements Added datetimetz, *_immutable, dateinterval and json fileds processing. closes #234 closes #270 Commits ------- f8457d5 improve make:crud
2 parents 6624595 + f8457d5 commit b5de434

File tree

4 files changed

+23
-8
lines changed

4 files changed

+23
-8
lines changed

.travis.yml

Lines changed: 2 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -15,6 +15,7 @@ cache:
1515
directories:
1616
- $HOME/.composer/cache/files
1717
- .phpunit
18+
- vendor
1819

1920
env:
2021
global:
@@ -24,7 +25,7 @@ before_install:
2425
- phpenv config-rm xdebug.ini
2526

2627
install:
27-
- composer install
28+
- composer update --no-suggest
2829
- ./vendor/bin/simple-phpunit install
2930

3031
script:

src/GeneratorTwigHelper.php

Lines changed: 14 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -31,15 +31,29 @@ public function getEntityFieldPrintCode($entity, $field): string
3131
$printCode = $entity.'.'.str_replace('_', '', $twigField);
3232

3333
switch ($field['type']) {
34+
case 'datetimetz_immutable':
35+
case 'datetimetz':
36+
$printCode .= ' ? '.$printCode.'|date(\'Y-m-d H:i:s T\') : \'\'';
37+
break;
38+
case 'datetime_immutable':
3439
case 'datetime':
3540
$printCode .= ' ? '.$printCode.'|date(\'Y-m-d H:i:s\') : \'\'';
3641
break;
42+
case 'dateinterval':
43+
$printCode .= ' ? '.$printCode.'.format(\'%y year(s), %m month(s), %d day(s)\') : \'\'';
44+
break;
45+
case 'date_immutable':
3746
case 'date':
3847
$printCode .= ' ? '.$printCode.'|date(\'Y-m-d\') : \'\'';
3948
break;
49+
case 'time_immutable':
4050
case 'time':
4151
$printCode .= ' ? '.$printCode.'|date(\'H:i:s\') : \'\'';
4252
break;
53+
case 'json':
54+
case 'json_array':
55+
$printCode .= ' ? '.$printCode.'|json_encode : \'\'';
56+
break;
4357
case 'array':
4458
$printCode .= ' ? '.$printCode.'|join(\', \') : \'\'';
4559
break;

src/Maker/MakeCrud.php

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -104,15 +104,15 @@ public function generate(InputInterface $input, ConsoleStyle $io, Generator $gen
104104
}
105105

106106
$controllerClassDetails = $generator->createClassNameDetails(
107-
$entityClassDetails->getRelativeNameWithoutSuffix(),
107+
$entityClassDetails->getRelativeNameWithoutSuffix().'Controller',
108108
'Controller\\',
109109
'Controller'
110110
);
111111

112112
$iter = 0;
113113
do {
114114
$formClassDetails = $generator->createClassNameDetails(
115-
$entityClassDetails->getRelativeNameWithoutSuffix().($iter ?: ''),
115+
$entityClassDetails->getRelativeNameWithoutSuffix().($iter ?: '').'Type',
116116
'Form\\',
117117
'Type'
118118
);

src/Resources/skeleton/crud/controller/Controller.tpl.php

Lines changed: 5 additions & 5 deletions
Original file line numberDiff line numberDiff line change
@@ -18,7 +18,7 @@
1818
class <?= $class_name ?> extends <?= $parent_class_name; ?><?= "\n" ?>
1919
{
2020
/**
21-
* @Route("/", name="<?= $route_name ?>_index", methods="GET")
21+
* @Route("/", name="<?= $route_name ?>_index", methods={"GET"})
2222
*/
2323
<?php if (isset($repository_full_class_name)): ?>
2424
public function index(<?= $repository_class_name ?> $<?= $repository_var ?>): Response
@@ -37,7 +37,7 @@ public function index(): Response
3737
<?php endif ?>
3838

3939
/**
40-
* @Route("/new", name="<?= $route_name ?>_new", methods="GET|POST")
40+
* @Route("/new", name="<?= $route_name ?>_new", methods={"GET","POST"})
4141
*/
4242
public function new(Request $request): Response
4343
{
@@ -60,15 +60,15 @@ public function new(Request $request): Response
6060
}
6161

6262
/**
63-
* @Route("/{<?= $entity_identifier ?>}", name="<?= $route_name ?>_show", methods="GET")
63+
* @Route("/{<?= $entity_identifier ?>}", name="<?= $route_name ?>_show", methods={"GET"})
6464
*/
6565
public function show(<?= $entity_class_name ?> $<?= $entity_var_singular ?>): Response
6666
{
6767
return $this->render('<?= $templates_path ?>/show.html.twig', ['<?= $entity_twig_var_singular ?>' => $<?= $entity_var_singular ?>]);
6868
}
6969

7070
/**
71-
* @Route("/{<?= $entity_identifier ?>}/edit", name="<?= $route_name ?>_edit", methods="GET|POST")
71+
* @Route("/{<?= $entity_identifier ?>}/edit", name="<?= $route_name ?>_edit", methods={"GET","POST"})
7272
*/
7373
public function edit(Request $request, <?= $entity_class_name ?> $<?= $entity_var_singular ?>): Response
7474
{
@@ -88,7 +88,7 @@ public function edit(Request $request, <?= $entity_class_name ?> $<?= $entity_va
8888
}
8989

9090
/**
91-
* @Route("/{<?= $entity_identifier ?>}", name="<?= $route_name ?>_delete", methods="DELETE")
91+
* @Route("/{<?= $entity_identifier ?>}", name="<?= $route_name ?>_delete", methods={"DELETE"})
9292
*/
9393
public function delete(Request $request, <?= $entity_class_name ?> $<?= $entity_var_singular ?>): Response
9494
{

0 commit comments

Comments
 (0)