Пара вопросов с текущими решениями ...
Прежде всего, метод postLink требует включения Javascript. От Торт Доку :
«Создает HTML-ссылку, но получает доступ к URL-адресу, используя метод POST. Требуется включить JavaScript в браузере.»
Если javascript отключен, вы просто получаете точно такой же вывод - скрытую форму и ссылку, которая пытается отправить эту форму с помощью Javascript (но не удается, поскольку JS отключен).
Во-вторых, хотя это будет работать, кажется странным использовать метод postLink, а затем использовать Javacript для точного уничтожения всей магии, которую создает метод postLink.
Если вы хотите не дружественное к javascript решение, все, что вам нужно сделать, это создать обычную форму, которая указывает на метод удаления, и поместить ссылку под ним, например:
<?php echo $this->Form->create('DefaultAvailability', array('url' array('action' => 'delete', $myRecord['ModelName']['id'])));?>
<?php echo $this->Form->end('Delete (no JS)');?>
<a href='#'>Delete (With JS, use AJAX)</a>
Тогда для случаев, когда нет JavaScript, скройте ссылку ниже, и форма будет работать как обычно.
Для случаев, когда есть javascript, скрыть форму и использовать javascript, чтобы ваша ссылка для удаления инициировала отправку в вашей форме удаления и обрабатывать эту отправку с помощью ajax.