Проще говоря:
- Создание действия контроллера CakePHP, которое выполняет обновление строки.
- Определите URL только что созданного вами действия контроллера. (т.е.
/controllername/actionname
)
- Определите, нужно ли вам выполнить запрос GET или POST к этому URL, чтобы он работал.
- Поместите код в ваше представление, которое присоединяет событие «onclick», которое делает и AJAX (GET / POST) запрос к вышеуказанному контроллеру.
В CakePHP есть помощник по javascript, который традиционно создавал код прототипа, но в v1.3 он теперь может создавать код для других сред Javascript (таких как Mootools, jQuery и т.
Однако многие предлагают писать свой javascript в javascript (например, фактически используя фреймворк Mootools), а не писать свой javascript в PHP (например, используя помощник CakePHP для создания кода Mootools).
В любом случае, по вашему мнению, вам нужно что-то вроде: <?php echo $js->link(..
или <script>Moo..
или <a onclick="Moo..
, чтобы прикрепить ваш Javascript к этой ссылке.
Вы также можете захотеть, чтобы действие вашего контроллера возвращало какой-то ответ, указывающий, было ли обновление строки неудачным или успешным. В этом случае вам нужно убедиться, что вызываемое вами действие контроллера CakePHP имеет представление, которое выводит это. JSON кажется идеальным форматом для этого (например, { success: true }
), но вы должны помнить, чтобы отключить вывод отладочной информации Cake. Этот ответ может быть записан в переменную вашим кодом Mootools, где вы можете решить, что с ним делать (например, отображать ошибку).