Мне также нужно создать действие копирования в Symfony.Я уже посмотрел на эти вопросы и ответы: symfony 1.4: создание действия «Копировать» .Кажется, что он работает нормально, но когда я пытаюсь сохранить сообщение об ошибке, появляется сообщение: «токен csrf: обнаружена атака CSRF».Я считаю, что это потому, что я не знаю, где изменить действие атрибута формы.
Любая помощь очень ценится!
Вот мой код:
actions.class.php:
class eventActions extends autoEventActions {
public function executeCopy(sfWebRequest $request)
{
$this->form = new EventCopyForm($this->getRoute()->getObject());
$this->event = $this->form->getObject();
$this->setTemplate('copy');
}
public function executeUpdatecopy(sfWebRequest $request)
{
$this->form = new EventCopyForm($this->getRoute()->getObject());
$this->processForm($request, $this->form);
$this->setTemplate('copy');
}
}
EvenCopyForm.class.php:
class EventCopyForm extends EventForm {
public function doSave($conn = null)
{
$this->updateObject();
$event = $this->getObject()->copy();
$event->save();
}
}
copySuccess.php:
<?php use_helper('I18N', 'Date') ?>
<?php include_partial('event/assets') ?>
<div id="sf_admin_container">
<h1><?php echo __('Copy Event', array(), 'messages') ?></h1>
<?php include_partial('event/flashes') ?>
<div id="sf_admin_header">
<?php include_partial('event/form_header', array('event' => $event, 'form' => $form, 'configuration' => $configuration)) ?>
</div>
<div id="sf_admin_content">
<?php include_partial('event/form', array('event' => $event, 'form' => $form, 'configuration' => $configuration, 'helper' => $helper)) ?>
</div>
<div id="sf_admin_footer">
<?php include_partial('event/form_footer', array('event' => $event, 'form' => $form, 'configuration' => $configuration)) ?>
</div>
</div>