CakePHP: встроить имя файла и путь CTP в представления и элементы - PullRequest
3 голосов
/ 05 сентября 2010

Я ищу элегантный способ сделать немного jquery осведомленным о имени файла и пути к файлу ctp, содержащему заданный выбор dom. Я использую simple_html_dom для записи изменений в шаблон мух через вызов ajax. Мне нужно указать имя файла и путь к ctp-файлу шаблона представления или элемента, который содержит элемент dom, который я выбрал, чтобы записать изменения в правильный файл.

Помимо ручной передачи этой информации в каждое представление и элемент моего приложения, существует ли элегантный (и безопасный) способ сделать эту информацию доступной для jquery?

Кроме того, есть ли причина, по которой я должен беспокоиться о том, чтобы встраивать эту информацию в документ в виде простого текста? Какое наиболее подходящее место для его хранения? Моя первая мысль была в атрибуте title элемента, но есть ли более подходящее местоположение?

Спасибо!

ОБНОВЛЕНИЕ Этот вопрос может быть лучше сформулирован следующим образом: каков наилучший способ прозрачного расширения или изменения каждого представления и элемента в торте? Сейчас я передаю некоторую информацию из app_controler в beforeRender, но это не позволяет мне передавать информацию об отдельных файлах представления элементов, насколько мне известно. В идеале каждое представление и элемент должны искать наличие определенного имени класса в элементах dom и вставлять информацию о пути и имени файла в атрибут title для этого элемента перед рендерингом. Я не могу найти хороший способ сделать это!

Ответы [ 2 ]

0 голосов
/ 29 июня 2011

Вы можете создать свой собственный класс View, который обрабатывает это для вас.Внутри вашей папки 'views' создайте файл с именем (например): custom.php.

Этот файл должен содержать класс, который расширяет базовый класс View CakePHP с именем 'CustomView'.Затем в beforeFilter вашего AppController установите $ this-> view = 'Custom'.Я не уверен, какой метод лучше всего подходит для того, что вы хотите сделать, но render () или renderLayout (), вероятно, являются хорошим местом для начала поиска.

0 голосов
/ 14 октября 2010
<div rel="<?php echo __FILE__; ?>">...</div>

если я вас не понимаю

...