Explorar el Código

Now pass the ModelManager to Guessers.

Romain Geissler hace 13 años
padre
commit
c421351c15
Se han modificado 2 ficheros con 7 adiciones y 4 borrados
  1. 4 3
      Guesser/TypeGuesserChain.php
  2. 3 1
      Guesser/TypeGuesserInterface.php

+ 4 - 3
Guesser/TypeGuesserChain.php

@@ -15,6 +15,7 @@ namespace Sonata\AdminBundle\Guesser;
 use Sonata\AdminBundle\Guesser\TypeGuesserInterface;
 use Sonata\AdminBundle\Guesser\TypeGuesserInterface;
 use Symfony\Component\Form\Exception\UnexpectedTypeException;
 use Symfony\Component\Form\Exception\UnexpectedTypeException;
 use Symfony\Component\Form\Guess\Guess;
 use Symfony\Component\Form\Guess\Guess;
+use Sonata\AdminBundle\Model\ModelManagerInterface;
 
 
 /**
 /**
  *
  *
@@ -47,10 +48,10 @@ class TypeGuesserChain implements TypeGuesserInterface
      * @param $property
      * @param $property
      * @return FieldFactoryGuess
      * @return FieldFactoryGuess
      */
      */
-    public function guessType($class, $property)
+    public function guessType($class, $property, ModelManagerInterface $modelManager)
     {
     {
-        return $this->guess(function ($guesser) use ($class, $property) {
-            return $guesser->guessType($class, $property);
+        return $this->guess(function ($guesser) use ($class, $property, $modelManager) {
+            return $guesser->guessType($class, $property, $modelManager);
         });
         });
     }
     }
 
 

+ 3 - 1
Guesser/TypeGuesserInterface.php

@@ -12,6 +12,8 @@
 
 
 namespace Sonata\AdminBundle\Guesser;
 namespace Sonata\AdminBundle\Guesser;
 
 
+use Sonata\AdminBundle\Model\ModelManagerInterface;
+
 interface TypeGuesserInterface
 interface TypeGuesserInterface
 {
 {
     /**
     /**
@@ -20,5 +22,5 @@ interface TypeGuesserInterface
      * @param string $property
      * @param string $property
      * @return TypeGuess
      * @return TypeGuess
      */
      */
-    function guessType($class, $property);
+    function guessType($class, $property, ModelManagerInterface $modelManager);
 }
 }