我是Symfony的新手,希望儘早使用最佳做法。我的代碼下面的作品,但它感覺有點骯髒。Symfony 2.5&twig:如何清理這段代碼?
我擔心,如果我在這裏寫的代碼太多。也許我想念一些我還不知道的Symfony-background-magic。下面的細節。
你會改變什麼(爲什麼)?我感謝每一個建議,成爲一個更好的開發者。提前致謝!
的routing.yml:
items_edit:
path: /items/edit/{id}
defaults: { _controller: myBundle:items:edit, id: null } # null = if not set?
requirements:
id: \d+
ItemController.php:
我一定要通過$item
或者是其他的數據無論如何gettable通過樹枝?
public function editAction($id, Request $request) {
$em = $this->getDoctrine()->getManager();
$repo = $em->getRepository('ItemsRepo');
$item = $repo->find($id);
$form = $this->createForm(new ItemFormType(), $item);
if ($request->isMethod('POST')) {
$form->handleRequest($request);
if ($form->isValid()) {
$em->persist($item);
$em->flush();
$this->get('session')->getFlashBag()->add('info', 'saved.');
return $this->redirect($this->generateUrl('items_list'));
}
}
return $this->render('edit.html.twig', array(
'form' => $form->createView(),
'item' => $item // !!!
));
}
edit.html.twig:
我必須補充{id: item.id}
這裏?
{% block content %}
<form action="{{ path('items_edit', {id: item.id}) }}" method="POST" {{ form_enctype(form) }}>
{# ... custom stuff ... #}
{{ form_end(form) }}
{% endblock %}
http://codereview.stackexchange.com/ – FoxMcCloud 2014-10-31 18:33:59
@ChaseC很好,謝謝! – 2014-10-31 18:36:19
@ Mr.B。什麼是'parentId'? – xurshid29 2014-10-31 19:20:41