0
동일한 엔티티의 콜렉션을 작성하는 양식을 만들어야하지만 콜렉션의 각 항목에 대해 모든 필드를 반복하지 않으려합니다 (다른 필드 값).입력을 공유하는 엔티티 컬렉션을 만드는 Symfony 양식
class Product
{
private $category;
private $name;
private $price;
}
내가 형태가 같은 시간에 같은 category
의 여러 Product
개체를 만들 싶습니다
Product
엔티티를 상상해보십시오. 양식에는
category
필드와
name
및
price
콜렉션이 있어야합니다. 자동으로 부모 필드 컬렉션 유형의 모든 개체를 채울 수있는 방법이 있는지
class ProductCollectionType extends AbstractType
{
public function buildForm(FormBuilderInterface $builder, array $options)
{
$builder
->add('category')
->add('products', CollectionType::class, array(
'entry_type' => ProductType::class,
'allow_add' => true,
'mapped' => false,
))
;
}
public function configureOptions(OptionsResolver $resolver)
{
$resolver->setDefaults(array(
'data_class' => Product::class,
));
}
}
class ProductType extends AbstractType
{
public function buildForm(FormBuilderInterface $builder, array $options)
{
$builder
->add('name')
->add('price')
;
}
public function configureOptions(OptionsResolver $resolver)
{
$resolver->setDefaults(array(
'data_class' => Product::class,
));
}
}
누구나 알고
내 양식과 같이 보일 것인가? (이 예에서는 category
만)
고마워요!
이것은 매우 기본적인 예제입니다.하지만 실제 사용 사례에서는이 필드가 하나의 필드에만 관련된 것이 아니며 모든 필드에 대해 내 엔터티에 적용하는 제약 조건을 활용하고 싶습니다. 심포니가 제공 한 무언가가이 사용 사례를 위해 만들어지기를 바랍니다. – Seb33300
추가 제품을 인스턴스화하고 양식을 만들려면 범주 필드 만 필요합니다. 이제 Doctrine, Symfony 양식 등 Product :: category의 모든 제약 사항을 얻게되었습니다. "객체 집합에 하나의 양식 필드 사용"은 상당히 익숙한 - 경로 사용 사례입니다. 가능한 한 활용하십시오. 그러나 타협과 약간의 추가 작업을 기대해야합니다. – JasonGabler