/** * Get the field formatters depending on the seeding mode * * 'manual' = No Field formatters are guessed. * 'auto' = All field formatters are guessed. * 'mixed' = Only missing field formatters are guessed. * * @return array The field formatters */ public function getFieldFormatters() { $mode = $this->_seeder->getSeedingMode(); switch ($mode) { case 'manual': return $this->_seeder->fieldFormatters(); case 'auto': return $this->_guessFieldFormatters(); case 'mixed': // TODO Improve by only guessing those needed $guesedFormatters = $this->_guessFieldFormatters(); $setFormatters = $this->_seeder->fieldFormatters(); return array_merge($guesedFormatters, $setFormatters); } // TODO Handle invalid mode return array(); }
/** * Set/get the field formatters * * {@inheritDoc} */ public function fieldFormatters() { parent::fieldFormatters(); $faker = $this->faker; return $this->_mergeFieldFormatters(array('name' => function ($state) use($faker) { return $faker->unique()->name; })); }