index.php 2.6 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081
  1. <?php
  2. use yii\helpers\Inflector;
  3. use yii\helpers\StringHelper;
  4. /**
  5. * @var yii\web\View $this
  6. * @var yii\gii\generators\crud\Generator $generator
  7. */
  8. $urlParams = $generator->generateUrlParams();
  9. $nameAttribute = $generator->getNameAttribute();
  10. echo "<?php\n";
  11. ?>
  12. use yii\helpers\Html;
  13. use <?= $generator->indexWidgetType === 'grid' ? "yii\\grid\\GridView" : "yii\\widgets\\ListView" ?>;
  14. /**
  15. * @var yii\web\View $this
  16. * @var yii\data\ActiveDataProvider $dataProvider
  17. * @var <?= ltrim($generator->searchModelClass, '\\') ?> $searchModel
  18. */
  19. $this->title = <?= $generator->generateString(Inflector::pluralize(Inflector::camel2words(StringHelper::basename($generator->modelClass)))) ?>;
  20. $this->params['breadcrumbs'][] = $this->title;
  21. ?>
  22. <div class="<?= Inflector::camel2id(StringHelper::basename($generator->modelClass)) ?>-index">
  23. <h1><?= "<?= " ?>Html::encode($this->title) ?></h1>
  24. <?= "<?php " . ($generator->indexWidgetType === 'grid' ? "// " : "") ?>echo $this->render('_search', ['model' => $searchModel]); ?>
  25. <p>
  26. <?= "<?= " ?>Html::a(<?= $generator->generateString('Create {modelClass}', ['modelClass' => Inflector::camel2words(StringHelper::basename($generator->modelClass))]) ?>, ['create'], ['class' => 'btn btn-success']) ?>
  27. </p>
  28. <?php if ($generator->indexWidgetType === 'grid'): ?>
  29. <?= "<?= " ?>GridView::widget([
  30. 'dataProvider' => $dataProvider,
  31. 'filterModel' => $searchModel,
  32. 'columns' => [
  33. ['class' => 'yii\grid\SerialColumn'],
  34. <?php
  35. $count = 0;
  36. if (($tableSchema = $generator->getTableSchema()) === false) {
  37. foreach ($generator->getColumnNames() as $name) {
  38. if (++$count < 6) {
  39. echo " '" . $name . "',\n";
  40. } else {
  41. echo " // '" . $name . "',\n";
  42. }
  43. }
  44. } else {
  45. foreach ($tableSchema->columns as $column) {
  46. $format = $generator->generateColumnFormat($column);
  47. if (++$count < 6) {
  48. echo " '" . $column->name . ($format === 'text' ? "" : ":" . $format) . "',\n";
  49. } else {
  50. echo " // '" . $column->name . ($format === 'text' ? "" : ":" . $format) . "',\n";
  51. }
  52. }
  53. }
  54. ?>
  55. ['class' => 'yii\grid\ActionColumn'],
  56. ],
  57. ]); ?>
  58. <?php else: ?>
  59. <?= "<?= " ?>ListView::widget([
  60. 'dataProvider' => $dataProvider,
  61. 'itemOptions' => ['class' => 'item'],
  62. 'itemView' => function ($model, $key, $index, $widget) {
  63. return Html::a(Html::encode($model-><?= $nameAttribute ?>), ['view', <?= $urlParams ?>]);
  64. },
  65. ]) ?>
  66. <?php endif; ?>
  67. </div>