Cake-PHP.ru
Форум программистов CakePHP
(на сайт)
Watched Topics
FAQ
Поиск
Пользователи
Группы
Регистрация
Профиль
Войти и проверить личные сообщения
Вход
Список форумов Cake-PHP.ru
->
Общий
Ответить
Имя
Тема
Сообщение
Смайлики
Дополнительные смайлики
Цвет шрифта:
По умолчанию
Тёмно-красный
Красный
Оранжевый
Коричневый
Жёлтый
Зелёный
Оливковый
Голубой
Синий
Тёмно-синий
Индиго
Фиолетовый
Белый
Чёрный
Размер шрифта:
Размер шрифта
Очень маленький
Маленький
Обычный
Большой
Огромный
Закрыть теги
Настройки
HTML
ВЫКЛЮЧЕН
BBCode
ВКЛЮЧЕН
Смайлики
ВКЛЮЧЕНЫ
Отключить в этом сообщении BBCode
Отключить в этом сообщении смайлики
Если у вас плохое зрение или вы не можете прочесть этот код по какой-то другой причине, то обратитесь за помощью к
Администратору
.
Код подтверждения: *
Введите код в точности так, как вы его видите. Код является регистро-зависимым, а символ нуля имеет косую линию внутри цифры.
Часовой пояс: GMT + 3
Перейти:
Выберите форум
CakePHP Форум
----------------
Общий
Установка и настройка
Творчество
Вопросы и пожелания
Комментарии к главам руководства по CakePHP 1.1
Обзор темы
Автор
Сообщение
xxx
Добавлено: 15 Мар 2008 21:44:43
Заголовок сообщения:
спасибо, поприличней выглядит чем мой вариант
Цитата:
А вобще посоветую.. если юзаете объектно ориентированный фрэймворк, то переводите мышление на ООП...
стараюсь, но не всегда получается
DeeperMD
Добавлено: 15 Мар 2008 19:31:09
Заголовок сообщения:
Хмм..
А если поразмыслить...
Модель:
Код:
function findWithContent($id = null)
{
$row = $this->findById($id)
$filename = $row['Model']['contents'];
$x = fopen($filename, "r");
$row['Model']['contents']= fread($x, filesize($filename));
fclose($x);
return $row;
}
Котроллер:
Код:
$this->set('content', $this->Model->findWithContent($id));
View:
Код:
<div>
<?=$content['Model']['title'] ?>
<div>
<textarea cols="75" rows="30" >
<?=$content['Model']['contents'] ?>
</textarea>
А вобще посоветую.. если юзаете объектно ориентированный фрэймворк, то переводите мышление на ООП...
xxx
Добавлено: 15 Мар 2008 19:14:52
Заголовок сообщения:
мне бы примеры, я ничего умнее такого пока не придумал:
модель
function getElementContent($filename = null)
{
$x = fopen($filename.".ctp", "r");
$contents = fread($x, filesize($filename.".ctp"));
fclose($x);
return $contents;
}
контролер
$this->set('content', $this->ProjElement->getElementContent("../views/".$element['ProjElement']['dir']."/".$element['ProjElement']['filename']));
view
<textarea cols="75" rows="30" >
<?php echo $content ?>
</textarea>
KPOTOB
Добавлено: 15 Мар 2008 17:24:53
Заголовок сообщения:
xxx
Имплименть beforeSave в AppModel или в Behavior. Но понимай что транзакционности не будет
DeeperMD
Добавлено: 15 Мар 2008 14:38:18
Заголовок сообщения:
Ну со view всё понятно наверное..
А с моделью реально почему не реально..
Залазаешь в модель пишешь там свою функцию, которая хоть борщ готовит
, а потом её вызываешь.. как будто это стандартный find...
сохранение тоже не очень сложное, просто перегружаешь метод save в модели делаешь всё что нужно (тобишь пишешь contents в файл и потом в этот же contents записываешь имя файла), далее полученный из контроллера массив (модифицированный твоей перегрузкой) подсовываешь стандартному save.
Вот и всё..
Если кто знает другой метод или где-то рациональнее, сам приму к сведению..
xxx
Добавлено: 15 Мар 2008 13:00:46
Заголовок сообщения: файл как datasource для модели
Есть модель, скажем page которая хранит название файла страницы которую хотим редактировать типа
page:
id:1 filename:index.html
хотелось бы что бы модель отдавала контролелру содержимое index.html как часть объекта $this->Page и при сохранении соответственно сохраняла бы Page['contents'] в index.html а остальное в БД
Результатом хочу получить в view форму сделанную хелпером, где одним из полей будет содержимое index.html
или это не рально?
может быть есть какой то другой способ?
Powered by phpBB © 2001, 2005 phpBB Group
Русская поддержка phpBB
Если ничего интересного не нашли, можно рекламу почитать, а рекламируется у нас сегодня «».