簡體   English   中英

如何在symfony2上顯示具有現有數據的填充表格

[英]Howto show filled form with existing data on symfony2

我正在嘗試使用數據庫中的現有數據來呈現symfony2填充的表單。 我想要的是更新數據。 為此,我想在表單上顯示當前數據。

目前,我正在獲取數據並填寫表格,但是我認為這不是最好的方法。

<form>
{% for value in values %}
    <input type="text" placeholder="{{ value.name }}">
    <input type="email" placeholder="{{ value.email }}">
    ...
{% endfor %}
</form>

我知道如何使用createFormBuilder和AbstractTypes創建表單,但是不知道如何顯示或呈現填充有來自實體的現有數據的表單。

您為什么要手工構建表格? 您只能使用{{ form(form) }} 這就是每個人都問您在哪里創建它的原因,因為它與填充它的位置相同。 從表單手冊中:

public function newAction(Request $request)
{
    // you can use a new instance of an entity or
    // get existing data from your database 
    // e.g. $task = $em->getRepository('Bundle:Task')->find(1);
    // and this data will fill your form.
    $task = new Task();
    $task->setTask('Write a blog post');
    $task->setDueDate(new \DateTime('tomorrow'));

    $form = $this->createFormBuilder($task)
        ->add('task', 'text')
        ->add('dueDate', 'date')
        ->add('save', 'submit')
        ->getForm();

    return $this->render('AcmeTaskBundle:Default:new.html.twig', array(
        'form' => $form->createView(),
    ));
}

看到對createFormBuilder的調用嗎? 那就是您在表格中輸入數據的地方。 傳遞的對象/數組中的數據將用作表單的填充數據。 現在,由您提供所需的數據,無論是數據庫中的實體還是包含任意數據的數組。 希望這可以幫助。

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM