Przeglądaj źródła

throw an exception if no type is defined

Thomas 14 lat temu
rodzic
commit
8848965450
3 zmienionych plików z 12 dodań i 0 usunięć
  1. 4 0
      Builder/DatagridBuilder.php
  2. 4 0
      Builder/FormBuilder.php
  3. 4 0
      Builder/ListBuilder.php

+ 4 - 0
Builder/DatagridBuilder.php

@@ -55,6 +55,10 @@ class DatagridBuilder implements DatagridBuilderInterface
             $fieldDescription->setAssociationMapping($admin->getClassMetaData()->associationMappings[$fieldDescription->getName()]);
         }
 
+        if(!$fieldDescription->getType()) {
+            throw new \RuntimeException(sprintf('Please define a type for field `%s` in `%s`', $fieldDescription->getName(), get_class($admin)));
+        }
+
         $fieldDescription->setOption('code', $fieldDescription->getOption('code', $fieldDescription->getName()));
         $fieldDescription->setOption('label', $fieldDescription->getOption('label', $fieldDescription->getName()));
         $fieldDescription->setOption('filter_value', $fieldDescription->getOption('filter_value', null));

+ 4 - 0
Builder/FormBuilder.php

@@ -389,6 +389,10 @@ class FormBuilder implements FormBuilderInterface
             $fieldDescription->setAssociationMapping($admin->getClassMetaData()->associationMappings[$fieldDescription->getName()]);
         }
 
+        if(!$fieldDescription->getType()) {
+            throw new \RuntimeException(sprintf('Please define a type for field `%s` in `%s`', $fieldDescription->getName(), get_class($admin)));
+        }
+
         $fieldDescription->setAdmin($admin);
         $fieldDescription->setOption('edit', $fieldDescription->getOption('edit', 'standard'));
 

+ 4 - 0
Builder/ListBuilder.php

@@ -54,6 +54,10 @@ class ListBuilder implements ListBuilderInterface
             $fieldDescription->setAssociationMapping($admin->getClassMetaData()->associationMappings[$fieldDescription->getName()]);
         }
 
+        if(!$fieldDescription->getType()) {
+            throw new \RuntimeException(sprintf('Please define a type for field `%s` in `%s`', $fieldDescription->getName(), get_class($admin)));
+        }        
+
         $fieldDescription->setOption('code', $fieldDescription->getOption('code', $fieldDescription->getName()));
         $fieldDescription->setOption('label', $fieldDescription->getOption('label', $fieldDescription->getName()));