Symfony 2.8表单EntityType返回单个值
只是尝试从数据库表中填充一个select字段。这只是一个简单的表,其中有一个主键列和另一个名为type的列 仅用于测试,示例表包括:Symfony 2.8表单EntityType返回单个值,symfony,doctrine-orm,symfony-2.8,Symfony,Doctrine Orm,Symfony 2.8,只是尝试从数据库表中填充一个select字段。这只是一个简单的表,其中有一个主键列和另一个名为type的列 仅用于测试,示例表包括: id type 1 Sample 1 2 Sample 2 3 Sample 3 创建表单时: $builder ->add('account_type', EntityType::class, array( 'class' => 'AppBundle:AppAccountTypes
id type
1 Sample 1
2 Sample 2
3 Sample 3
创建表单时:
$builder
->add('account_type', EntityType::class, array(
'class' => 'AppBundle:AppAccountTypes',
'choice_label' => 'type'
));
我的选择下拉列表只是将第一个条目重复3次
<select id="add_account_form_account_type" name="add_account_form[account_type]" class="form-control">
<option value="1">Sample 1</option>
<option value="1">Sample 1</option>
<option value="1">Sample 1</option>
</select>
细枝模板:
{% extends 'base.html.twig' %}
{% block body %}
<h1>{{ page_title }}</h1>
{{ form_start(form) }}
{{ form_widget(form) }}
{{ form_end(form) }}
{% endblock %}
{%extends'base.html.twig%}
{%block body%}
{{page_title}}
{{form_start(form)}}
{{form_widget(form)}
{{form_end(form)}}
{%endblock%}
我这里缺少什么?可能是您需要使用以下代码:
$builder
->add('account_type', EntityType::class, array(
'class' => 'AppBundle:AppAccountTypes(Your Entity Class)',
'mapped' => false,
'choice_label' => 'type'
));
因为正如我在代码中看到的,没有一个字段的名称是帐户类型
,这可能就是问题所在
按以下方式更改控制器:
$form = $this->createForm(AddAccountForm::class (Your form class), $account);
可能您需要使用以下代码:
$builder
->add('account_type', EntityType::class, array(
'class' => 'AppBundle:AppAccountTypes(Your Entity Class)',
'mapped' => false,
'choice_label' => 'type'
));
因为正如我在代码中看到的,没有一个字段的名称是帐户类型
,这可能就是问题所在
按以下方式更改控制器:
$form = $this->createForm(AddAccountForm::class (Your form class), $account);
你的控制器和细枝是什么样子的?只是为了测试而更新、简化了一切。我肯定我错过了一些非常明显的东西,但我看不到。从我所看到的来看,看起来很好。。。可能也会尝试发布实体和存储库——尽管我怀疑这是否有任何明显的奇怪之处。一切看起来都很好。可能会发布您的
AppAccountTypes.php
Entity文件。通过查看AppAccountTypes.php找到它。条令中有一个bug或特性:映射:导入。ap_account_types表id的id列使用了tinyint。Symfony使用布尔值而不是整数字段生成实体。这个:你的控制器和细枝看起来像什么?为了测试,更新、简化了一切。我肯定我错过了一些非常明显的东西,但我看不到。从我所看到的来看,看起来很好。。。可能也会尝试发布实体和存储库——尽管我怀疑这是否有任何明显的奇怪之处。一切看起来都很好。可能会发布您的AppAccountTypes.php
Entity文件。通过查看AppAccountTypes.php找到它。条令中有一个bug或特性:映射:导入。ap_account_types表id的id列使用了tinyint。Symfony使用布尔值而不是整数字段生成实体。这: