Tôi đang cố gắng tùy chỉnh các nhãn biểu mẫu được tạo trong biểu mẫu con.Symfony2: tùy chỉnh nhãn biểu mẫu trong bộ sưu tập biểu mẫu
Tôi muốn hiển thị đồ đạc bóng đá được chứa trong một tuần trò chơi cụ thể, như sau:
- Fixture 1 : Manchester United (0) - (1) Arsenal - Fixture 2 : Chelsea (2) - (1) Liverpool - ...
hình thức hiển thị của tôi tất cả đồ đạc và điểm liên quan nhưng tất cả các nhãn chứa các tên cột cơ sở dữ liệu (score1, score2). Thay vào đó, tôi muốn đặt tên nhóm. Vì vậy, nó hiện đang hiển thị:
- Fixture 1 : score1 (0) - (1) score2 - Fixture 2 : score1 (2) - (1) score2 - ...
Trong bộ điều khiển, tôi tạo biểu mẫu tuần (Loại tuần). $ week chứa dữ liệu tuần và dữ liệu đồ đạc sử dụng $ week-> getFixtures().
Controller/DefaultController.php
$form = $this->createForm(new WeekType(), $week)->createView();
return array(
'form' => $form,
);
Mẫu hình thức/WeekType.php
class WeekType extends AbstractType
{
public function buildForm(FormBuilder $builder, array $options)
{
$builder->add('fixtures', 'collection', array(
'type' => new FixtureType(),
));
}
}
Các Lịch thi đấu thêm 2 lĩnh vực. Tôi muốn thay thế nhãn mặc định thành tên nhóm. Tuy nhiên tôi không thể truy cập dữ liệu lịch thi đấu trong biểu mẫu này. $ tùy chọn là NULL. Tôi nghĩ $ tùy chọn ['dữ liệu'] sẽ chứa dữ liệu đồ đạc ... nhưng tôi đã sai.
Form/FixtureType.php
class FixtureType extends AbstractType
{
public function buildForm(FormBuilder $builder, array $options)
{
$builder->add('score1', 'text', array('label' => **WHAT TO PUT HERE**));
$builder->add('score2', 'text', array('label' => **WHAT TO PUT HERE**));
}
}
tôi hiển thị tất cả đồ đạc sử dụng mã này, và nó hoạt động tuyệt vời.
index.html.twig
{% for fixture in week.form.fixtures %}
{{ form_widget(fixture) }}
{% endfor %}
Có lẽ tôi có thể tùy chỉnh nhãn của tôi trực tiếp trong index.html.twig nhưng làm thế nào tôi có thể nhận đồ đạc dữ liệu?
Có ai đó gặp sự cố này và giải quyết vấn đề này không?