Loading...
v.bonapartov avatar v.bonapartov 18 Точки

[Software Technologies] PHP MVC & Symfony - Calculator

Здравейте, колеги,

Опитвам се да направя калкулатора, показан в лекцията от 19 юли.
Получавам следната грешка:
Type error: Too few arguments to function Symfony\Component\Form\FormRenderer::renderBlock().
Някой да се е сблъсквал с подобно нещо?

<?php

namespace AppBundle\Controller;

use AppBundle\Form\CalculatorType;
use AppBundle\Model\Calculator;
use Sensio\Bundle\FrameworkExtraBundle\Configuration\Route;
use Symfony\Bundle\FrameworkBundle\Controller\Controller;

class CalculatorController extends Controller
{
    /**
     * @Route("/calculator", name="calculator_index")
     * @return \Symfony\Component\HttpFoundation\Response
     */
    public function indexAction()
    {
        $form = $this->createForm(CalculatorType::class);

        return $this->render("calculator/index.html.twig",
            [
                'form' => $form->createView()
            ]);
    }
}
<?php

namespace AppBundle\Form;

use AppBundle\Model\Calculator;
use Symfony\Component\Form\AbstractType;
use Symfony\Component\Form\Extension\Core\Type\NumberType;
use Symfony\Component\Form\FormBuilderInterface;
use Symfony\Component\OptionsResolver\OptionsResolver;

class CalculatorType extends AbstractType
{
    public function buildForm(FormBuilderInterface $builder, array $options)
    {
        $builder->add('firstNumber', NumberType::class)
                ->add('secondNumber', NumberType::class);
    }

    public function configureOptions(OptionsResolver $resolver)
    {
        $resolver->setDefaults(
            [
                'data_class' => Calculator::class
            ]
        );
    }

    public function getBlockPrefix()
    {
        return 'app_bundle_calculator_type';
    }
}

Поздрави,
Веселин

 

Тагове:
0
Софтуерни технологии 30/10/2017 10:34:39
RoYaL avatar RoYaL Trainer 6849 Точки

Изтрий кеша на симфонито, ако не стане - махни този метод getBlockPrefix

0
v.bonapartov avatar v.bonapartov 18 Точки

Пробвах и това. Изтрил съм /var/cache и метода getBlockPrefix. Резултата е същия.

<?php

namespace AppBundle\Form;

use AppBundle\Model\Calculator;
use Symfony\Component\Form\AbstractType;
use Symfony\Component\Form\Extension\Core\Type\NumberType;
use Symfony\Component\Form\FormBuilderInterface;
use Symfony\Component\OptionsResolver\OptionsResolver;

class CalculatorType extends AbstractType
{
    public function buildForm(FormBuilderInterface $builder, array $options)
    {
        $builder->add('firstNumber', NumberType::class)
                ->add('secondNumber', NumberType::class)
                ->add('thirdNumber', NumberType::class);
    }

    public function configureOptions(OptionsResolver $resolver)
    {
        $resolver->setDefaults(
            [
                'data_class' => Calculator::class
            ]
        );
    }
}
0
Можем ли да използваме бисквитки?
Ние използваме бисквитки и подобни технологии, за да предоставим нашите услуги. Можете да се съгласите с всички или част от тях.
Назад
Функционални
Използваме бисквитки и подобни технологии, за да предоставим нашите услуги. Използваме „сесийни“ бисквитки, за да Ви идентифицираме временно. Те се пазят само по време на активната употреба на услугите ни. След излизане от приложението, затваряне на браузъра или мобилното устройство, данните се трият. Използваме бисквитки, за да предоставим опцията „Запомни Ме“, която Ви позволява да използвате нашите услуги без да предоставяте потребителско име и парола. Допълнително е възможно да използваме бисквитки за да съхраняваме различни малки настройки, като избор на езика, позиции на менюта и персонализирано съдържание. Използваме бисквитки и за измерване на маркетинговите ни усилия.
Рекламни
Използваме бисквитки, за да измерваме маркетинг ефективността ни, броене на посещения, както и за проследяването дали дадено електронно писмо е било отворено.