Próbuję osadzić zbiór form tak jak pokazany tutaj - http://symfony.com/doc/current/cookbook/form/form_collections.htmlBłąd podczas próby użycia formularzy osadzonych w Symfony2
prawie Przepisz kod stamtąd ale spotkałem dwa problemy:
FatalErrorException: Compile Error: Declaration of MyBundle\Form\Type\ExpenseType::setDefaultOptions() must be compatible with that of Symfony\Component\Form\FormTypeInterface::setDefaultOptions() in MyBundle\Form\Type\ExpenseType.php line 33
Funkcja form_start() nie istnieje.
Czy masz pomysły na rozwiązanie pierwszego problemu? Nic nie pomaga :(
PS Nie dodaję żadnego kodu, ponieważ jest taki sam jak w książce, zmieniłem tylko nazwy (lub przynajmniej tak myślę), dodam dowolny kod, jeśli to konieczne.
ExpenseType.php
<?php
namespace MyBundle\Form\Type;
use Symfony\Component\Form\AbstractType;
use Symfony\Component\Form\FormBuilderInterface;
class ExpenseType extends AbstractType
{
public function buildForm(FormBuilderInterface $builder, array $options)
{
$builder->add('name', 'text',array(
'label' => ' '));
$builder->add('description', 'textarea',array(
'label' => ' '));
$builder->add('expenseVariants', 'collection', array('type' => new ExpenseVairantType()));
}
public function setDefaultOptions(OptionsResolverInterface $resolver)
{
$resolver->setDefaults(array(
'data_class' => 'MyBundle\Entity\Expense',
));
}
public function getName()
{
return 'expense';
}
}
Będziesz musiał przynajmniej pokazać nam ExpenseType.php –
Uaktualniłem pytanie :) – Faery