でから別のテーブルを更新する方法:更新が適切に行われている場合、私はよく分からないが、基本的に私は給与計算期間と給与の週更新したいエラーの取得symfonyの
Variable "form" does not exist in comtwclagripayrollBundle:Payrollperiod:new.html.twig at line 9
を一度試合があります。リポジトリはそれをチェックします。
リポジトリ:
public function findByPayrollPeriod($startDate, $endDate)
{
return $this->getEntityManager()
->createQuery(
'SELECT p FROM comtwclagripayrollBundle:PayrollWeek
WHERE startDate = :startDate or endDate = :endDate'
)
->setParameter('startDate', $startDate)
->setParameter('endDate', $endDate)
->getResult();
}
コントローラー:
public function createAction(Request $request)
{
$em = $this->getDoctrine()->getManager();
$entity = new Payrollperiod();
$form = $this->createCreateForm($entity);
$form->handleRequest($request);
$payrollperiod = $em->getRepository('comtwclagripayrollBundle:Payrollperiod')->findOneBy(['startdate'=>$form->get('startDate')->getData(), 'enddate'=>$form->get('endDate')->getData()]);
//If entity exists
if ($payrollperiod){
$this->addFlash('error', 'Payroll Period exist.');
return $this->redirect($this->generateUrl('payrollperiod'));
}
if ($form->isSubmitted() && $form->isValid()) {
$payrollweek = $em->getRepository('comtwclagripayrollBundle:Payrollperiod')->findByPayrollPeriod(['startdate'=>$form->get('startDate')->getData(), 'enddate'=>$form->get('endDate')->getData()]);
if ($payrollweek){
$entity->setPayrollweek($payrollweek);
$em->persist($entity);
// $em->persist($payrollweek);
$em->flush();
$this->addFlash('error', 'Payroll Period was added.');
return $this->redirect($this->generateUrl('payrollperiod'));
//return $this->redirect($this->generateUrl('payrollperiod_show', array('payrollperiodid' => $entity->getpayrollperiodid())));
}
return $this->render('comtwclagripayrollBundle::new.html.twig',array('form' => $form->createView()));
}
}
private function createCreateForm(Payrollperiod $entity)
{
$form = $this->createForm(new PayrollperiodType(), $entity, array(
'action' => $this->generateUrl('payrollperiod_create'),
'method' => 'POST',
));
$form->add('submit', 'submit', array('label' => 'Create'));
return $form;
}
小枝:
{% extends '::base.html.twig' %}
{% block body -%}
<div id="pg_section_sml_card">
<h1 class="pg_card_hdr">Payroll Period</h1>
<div class="pg_card_text">
{{ form_start(form) }}
{{ form_errors(form) }}
{{ form_end(form) }}
<ul class="record_actions">
<li>
<a href="{{ path('payrollperiod') }}">
Back to the list
</a>
</li>
</ul>
</div>
</div>
{% endblock %}
あなたがpayrollweekの場合は、私は閉じていることを忘れた –
おかげで、私はそれでも同じエラーが表示されます。 – Sue