2013-05-20 2 views
3

키 양식 모음 배열에 대한 엔티티 데이터베이스 ID를 사용하여이 같은 행 :Symfony2 - 나는 양식 모음을 구축하고 그것을 출력의

<input type="number" name="order[items][1][qty]"> 
<input type="number" name="order[items][2][qty]"> 

하지만 내가하고 싶은 것은이 비트가 있습니다 :

<input type="number" name="order[items][DB_ID_1][qty]"> 
<input type="number" name="order[items][DB_ID_2][qty]"> 

DB_ID_1은 데이터베이스 레코드 ID의 숫자 값입니다. 그래서 이렇게 내 템플릿에 각 행을 인쇄 할 수 있습니다 :

{{ form.items.1 }} 

그래서 ID 1로 데이터베이스 레코드에서 양식 요소를 인쇄, 현재 그것은을 가질 수 1의 키의 요소를 출력 예를 들어 9의 실제 데이터베이스 ID

더 많은 정보가 필요하면 알려주십시오. 감사합니다

+0

나는 당신이하고 싶은 것을 이해한다고 생각합니다. 내 질문은 : 왜? – cheesemacfly

+0

주문 항목 목록을 살펴보고 {{form.items.DB_ID}} 같은 항목을 사용하여 일치하는 qty 필드 입력을 인쇄하고 싶습니다. 더 좋은 방법이 있으면 사용할 수있는 의견이 있습니다. 모두 서식을 지정하고 있습니다. 덕분에 – coder4show

답변

3

는 마침내이 게시물의 도움으로 답을 발견 Embedding a collection of forms Symfony2 forms with adding and deleting allowed

그것은 아주 간단한 해결책이었습니다. 잘못된 장소를 찾고있었습니다. INDUST BY x.id를 맞춤 클래스 리포지토리에 사용해야했습니다.

$em->createQuery("SELECT f FROM ExampleCoreBundle:Folder f INDEX BY f.id WHERE f.uid = :uid"); 

이것은 배열의 키가 폴더의 데이터베이스 레코드의 id 필드 인 Folder 개체의 배열을 반환했습니다.

원래는 Form Collections와 마찬가지로 잘 작동합니다.이 정보가 웹 사이트의 Form Collections 페이지에없는 것이므로 앞으로 다른 사람에게 도움이되기를 바랍니다.

1

당신이 사용하는 당신이보기에 전달 된 form 내부의 객체의 값에 액세스 할 수 있습니다

{% for order in form.orders %} 
    {{ order.vars.value.id }} 
{% endfor %} 

http://symfony.com/doc/current/book/forms.html#rendering-each-field-by-hand

+0

감사합니다 - 이미 그것에 대해 알고, 내 질문에 미안하지만, 이것은 올바른 항목 필드에 맞는 수량 필드와 일치하는 데 도움이 포함되어 있어야합니다 - 내가 뭔가를 놓치지 않는 한? – coder4show

+0

그래서'id' 옆에'qty' 필드를 원하면'{{order.vars.value.id}} : {{order.vars.value.qty}}'를 사용할 수 있습니다. 아니면'order' 엔티티가 그보다 더 복잡합니까? – cheesemacfly

+0

'{{order.vars.data.id}}' – Harold