0

フォームが保存されたときにこれを取得します。

Object of class Business\CompaniesBundle\Model\Province could not be converted to int in /Library/WebServer/Documents/business/src/Business/CompaniesBundle/Model/om/BaseCompany.php

<?php
namespace Business\CompaniesBundle\Form\Type;

use Symfony\Component\Form\AbstractType;
use Symfony\Component\Form\FormBuilderInterface;
use Symfony\Component\OptionsResolver\OptionsResolverInterface;
use Business\CompaniesBundle\Model\IndustriesQuery;
use Business\CompaniesBundle\Model\Province;
use Business\CompaniesBundle\Model\ProvinceQuery;

class CompanyType extends AbstractType {
    public function buildForm(FormBuilderInterface $builder, array $options) {
        $builder->add('company_name');
        $builder->add('company_description','textarea');
        $builder->add('company_address');
        $builder->add('province_id', 'model', array(
            'class'=>'Business\CompaniesBundle\Model\Province'
            //'query'=> ProvinceQuery::create()->orderByProvinceName()
        ));
        $builder->add('industries', 'model', array(
            'class'=>'Business\CompaniesBundle\Model\Industries',
            'query'=> IndustriesQuery::create()->orderByIndustryName(),
            'multiple'=>true,
            'expanded'=>true,
            'required'=>true
        ));
    }

    public function setDefaultOptions(OptionsResolverInterface $resolver) {
        $resolver->setDefaults(array('data_class'=>'Business\CompaniesBundle\Model\Company'));
    }

    public function getName() {
        return 'company';
    }

ここで何が問題なのか分かりますか?

4

1 に答える 1

0

変更することで修正されました

$builder->add('province_id', 'model', array(
        'class'=>'Business\CompaniesBundle\Model\Province'
    ));

$builder->add('province', 'model', array(
        'class'=>'Business\CompaniesBundle\Model\Province'
    ));

Company オブジェクトの setProvince メソッドには、Province タイプのオブジェクトが必要です

于 2013-05-30T08:35:21.380 に答える