<?xml version="1.0" encoding="windows-1251"?>
<rss version="2.0">
<channel>
<title>CakePHP - Manual/BasicPrinciples/Structure</title>
<link>http://cake-php.ru/wiki/Manual/BasicPrinciples/Structure</link>
<description>History/revisions of CakePHP/Manual/BasicPrinciples/Structure</description>
<language>en-us</language>
<item>
<title>2008-03-22 02:18:29</title>
<link>http://cake-php.ru/wiki/Manual/BasicPrinciples/Structure/show?time=2008-03-22+02%3A18%3A29</link>
<description>&lt;div class="pageBefore">&lt;img src="http://cake-php.ru/wiki/images/z.gif" width="1" height="1" border="0" alt="" style="display:block" align="top" />&lt;/div>&lt;div class="page">
&lt;b>Сравнение версий &lt;a name=".manual.basicprinciples.structure" href="http://cake-php.ru/wiki/Manual/BasicPrinciples/Structure" class="">/Manual&amp;nbsp;/&amp;nbsp;Basic&amp;nbsp;Principles&amp;nbsp;/&amp;nbsp;Structure&lt;/a> за &lt;a href="http://cake-php.ru/wiki/Manual/BasicPrinciples/Structure?time=2008-03-22+02%3A18%3A29">2008-03-22 02:18:29&lt;/a> и &lt;a href="http://cake-php.ru/wiki/Manual/BasicPrinciples/Structure">2009-03-26 13:22:36&lt;/a>&lt;/b>&lt;br />
&lt;br />
&lt;b>Добавлено:&lt;/b>&lt;br />
&lt;div class="additions">&lt;span class="missingpage">&amp;lt;&amp;lt; Понимание архитектуры MVC&lt;/span>&lt;a href="http://cake-php.ru/wiki/Beginning/UnderstandingMVC/edit?add=1" title="Создать эту страницу">?&lt;/a> | &lt;span class="missingpage">Файловая структура &amp;gt;&amp;gt;&lt;/span>&lt;a href="http://cake-php.ru/wiki/FileStructure/edit?add=1" title="Создать эту страницу">?&lt;/a>&lt;/div>&lt;/div>
</description>
</item>
<item>
<title>2007-11-28 12:03:23</title>
<link>http://cake-php.ru/wiki/Manual/BasicPrinciples/Structure/show?time=2007-11-28+12%3A03%3A23</link>
<description>&lt;div class="pageBefore">&lt;img src="http://cake-php.ru/wiki/images/z.gif" width="1" height="1" border="0" alt="" style="display:block" align="top" />&lt;/div>&lt;div class="page">
&lt;b>Сравнение версий &lt;a  href="http://cake-php.ru/wiki/Manual/BasicPrinciples/Structure" class="">/Manual&amp;nbsp;/&amp;nbsp;Basic&amp;nbsp;Principles&amp;nbsp;/&amp;nbsp;Structure&lt;/a> за &lt;a href="http://cake-php.ru/wiki/Manual/BasicPrinciples/Structure?time=2007-11-28+12%3A03%3A23">2007-11-28 12:03:23&lt;/a> и &lt;a href="http://cake-php.ru/wiki/Manual/BasicPrinciples/Structure?time=2008-03-22+02%3A18%3A29">2008-03-22 02:18:29&lt;/a>&lt;/b>&lt;br />
&lt;br />
&lt;b>Добавлено:&lt;/b>&lt;br />
&lt;div class="additions">CakePHP имеет не&amp;nbsp;только классы работы с&amp;nbsp;Контроллером, Моделью и&amp;nbsp;Отображением, но&amp;nbsp;также и&amp;nbsp;некоторые дополнительные классы и&amp;nbsp;объекты, которые делают создание приложений в&amp;nbsp;архитектуре MVC&amp;nbsp;более быстрым и&amp;nbsp;приятным. Компоненты, Поведения и&amp;nbsp;Помощники являются классами, которые расширяют основные, служат для&amp;nbsp;множественного использования и&amp;nbsp;быстро добавляют функциональность к&amp;nbsp;базовым классам MVC&amp;nbsp;в&amp;nbsp;приложениях. Сейчас мы&amp;nbsp;работаем только с&amp;nbsp;основными классами, поэтому узнаем как&amp;nbsp;использовать дополнительные несколько позже.&lt;br />
Расширения, которые позволяют выносить участки кода из&amp;nbsp;Модели, называются Поведениями (Behavior). Например, если вы&amp;nbsp;храните информацию о&amp;nbsp;пользователе в&amp;nbsp;древовидной структуре, то&amp;nbsp;можете выделить пользовательскую Модель в&amp;nbsp;Поведение и&amp;nbsp;получить простую функциональность по&amp;nbsp;добавлению, удалению или&amp;nbsp;редактированию узлов этого дерева.&lt;br />
Модели также поддерживают другой класс под&amp;nbsp;названием DataSource. DataSources &amp;mdash; это&amp;nbsp;абстракция модели, которая позволяет манипулировать различными типами данных. Хотя обычно с&amp;nbsp;Моделью работают, как&amp;nbsp;с&amp;nbsp;базой данных, вам&amp;nbsp;ничего не&amp;nbsp;стоит написать DataSource, чтобы работать с&amp;nbsp;Моделью, как&amp;nbsp;с&amp;nbsp;RSS-потоком, CSV&amp;nbsp;файлами, записями LDAP или&amp;nbsp;событиями iCal. DataSources позволяет вам&amp;nbsp;связать записи различных источников, а&amp;nbsp;не только подсоединяться при&amp;nbsp;помощи SQL. Например, вы&amp;nbsp;можете указать, что&amp;nbsp;ваша LDAP Модель связана с&amp;nbsp;несколькими iCal записями.&lt;/div>&lt;br />
&lt;b>Удалено:&lt;/b>&lt;br />
&lt;div class="deletions">CakePHP имеет не&amp;nbsp;только классы работы с&amp;nbsp;Контроллером, Моделью и&amp;nbsp;Отображением, но&amp;nbsp;так же&amp;nbsp;и некоторые дополнительные классы и&amp;nbsp;объекты, которые делают создание приложений в&amp;nbsp;архитектуре MVC&amp;nbsp;более быстрым и&amp;nbsp;приятным. Компоненты, Поведения и&amp;nbsp;Помощники являются классами, которые расширяют основные, служат для&amp;nbsp;множественного использования и&amp;nbsp;быстро добавляют функциональность к&amp;nbsp;базовым классам MVC&amp;nbsp;в&amp;nbsp;приложениях. Сейчас мы&amp;nbsp;работаем только с&amp;nbsp;основными классами, поэтому узнаем как&amp;nbsp;использовать дополнительные несколько позже.&lt;br />
Расширения, которые позволяют выносить участки кода из&amp;nbsp;Модели, называются Поведения (Behavior). Например, если вы&amp;nbsp;храните информацию о&amp;nbsp;пользователе в&amp;nbsp;древовидной структуре, то&amp;nbsp;можете выделить пользовательскую Модель в&amp;nbsp;Поведение и&amp;nbsp;получить простую функциональность по&amp;nbsp;добавлению, удалению или&amp;nbsp;редактированию узлов этого дерева.&lt;br />
Модели так&amp;nbsp;же&amp;nbsp;поддерживают другой класс под&amp;nbsp;названием DataSource. DataSources &amp;mdash; это&amp;nbsp;абстракция модели, которая позволяет манипулировать различными типами данных. Хотя обычно с&amp;nbsp;Моделью работают, как&amp;nbsp;с&amp;nbsp;базой данных, вам&amp;nbsp;ничего не&amp;nbsp;стоит написать DataSource, чтобы работать с&amp;nbsp;Моделью, как&amp;nbsp;с&amp;nbsp;RSS-потоком, CSV&amp;nbsp;файлами, записями LDAP или&amp;nbsp;событиями iCal. DataSources позволяет вам&amp;nbsp;связать записи различных источников, а&amp;nbsp;не только подсоединяться при&amp;nbsp;помощи SQL. Например, вы&amp;nbsp;можете указать, что&amp;nbsp;ваша LDAP Модель связана с&amp;nbsp;несколькими iCal записями.&lt;/div>&lt;/div>
</description>
</item>
<item>
<title>2007-11-28 00:29:51</title>
<link>http://cake-php.ru/wiki/Manual/BasicPrinciples/Structure/show?time=2007-11-28+00%3A29%3A51</link>
<description>&lt;div class="pageBefore">&lt;img src="http://cake-php.ru/wiki/images/z.gif" width="1" height="1" border="0" alt="" style="display:block" align="top" />&lt;/div>&lt;div class="page">
&lt;b>Сравнение версий &lt;a  href="http://cake-php.ru/wiki/Manual/BasicPrinciples/Structure" class="">/Manual&amp;nbsp;/&amp;nbsp;Basic&amp;nbsp;Principles&amp;nbsp;/&amp;nbsp;Structure&lt;/a> за &lt;a href="http://cake-php.ru/wiki/Manual/BasicPrinciples/Structure?time=2007-11-28+00%3A29%3A51">2007-11-28 00:29:51&lt;/a> и &lt;a href="http://cake-php.ru/wiki/Manual/BasicPrinciples/Structure?time=2007-11-28+12%3A03%3A23">2007-11-28 12:03:23&lt;/a>&lt;/b>&lt;br />
&lt;br />
&lt;b>Добавлено:&lt;/b>&lt;br />
&lt;div class="additions">Расширения, которые позволяют выносить участки кода из&amp;nbsp;Модели, называются Поведения (Behavior). Например, если вы&amp;nbsp;храните информацию о&amp;nbsp;пользователе в&amp;nbsp;древовидной структуре, то&amp;nbsp;можете выделить пользовательскую Модель в&amp;nbsp;Поведение и&amp;nbsp;получить простую функциональность по&amp;nbsp;добавлению, удалению или&amp;nbsp;редактированию узлов этого дерева.&lt;br />
Модели так&amp;nbsp;же&amp;nbsp;поддерживают другой класс под&amp;nbsp;названием DataSource. DataSources &amp;mdash; это&amp;nbsp;абстракция модели, которая позволяет манипулировать различными типами данных. Хотя обычно с&amp;nbsp;Моделью работают, как&amp;nbsp;с&amp;nbsp;базой данных, вам&amp;nbsp;ничего не&amp;nbsp;стоит написать DataSource, чтобы работать с&amp;nbsp;Моделью, как&amp;nbsp;с&amp;nbsp;RSS-потоком, CSV&amp;nbsp;файлами, записями LDAP или&amp;nbsp;событиями iCal. DataSources позволяет вам&amp;nbsp;связать записи различных источников, а&amp;nbsp;не только подсоединяться при&amp;nbsp;помощи SQL. Например, вы&amp;nbsp;можете указать, что&amp;nbsp;ваша LDAP Модель связана с&amp;nbsp;несколькими iCal записями.&lt;br />
Как&amp;nbsp;и&amp;nbsp;Контроллеры, Модели предоставляют некоторые функции обратного вызова:&lt;br />
&lt;ul>&lt;li> &lt;tt>beforeFind()&lt;/tt>
&lt;/li>&lt;li> &lt;tt>afterFind()&lt;/tt>
&lt;/li>&lt;li> &lt;tt>beforeValidate()&lt;/tt>
&lt;/li>&lt;li> &lt;tt>beforeSave()&lt;/tt>
&lt;/li>&lt;li> &lt;tt>afterSave()&lt;/tt>
&lt;/li>&lt;li> &lt;tt>beforeDelete()&lt;/tt>
&lt;/li>&lt;li> &lt;tt>afterDelete()&lt;/tt>&lt;/li>&lt;/ul>
По&amp;nbsp;именам этих функций должно быть понятно когда они&amp;nbsp;вызываются. Обязательно прочитайте о&amp;nbsp;них подробнее в&amp;nbsp;главе о&amp;nbsp;Моделях.&lt;a name="h73-1">&lt;/a>&lt;h2>Расширение Приложения&lt;/h2>
Вы&amp;nbsp;можете определить расширения для&amp;nbsp;Контроллеров, Моделей и&amp;nbsp;Отображений заранее для&amp;nbsp;всех действий системы. AppController (располагается в&amp;nbsp;&lt;tt>/app/app_controller.php&lt;/tt>), AppHelper (располагается в&amp;nbsp;&lt;tt>/app/app_helper.php&lt;/tt>) и&amp;nbsp;AppModel (располагается в&amp;nbsp;&lt;tt>/app/app_model.php&lt;/tt>) &amp;mdash; это&amp;nbsp;классы в&amp;nbsp;которых вы&amp;nbsp;можете определить Компоненты, Помощники и&amp;nbsp;Поведения, которые будут доступны по&amp;nbsp;всей системе.&lt;br />
Cake считает, что&amp;nbsp;URL, введенный вами, указывает на&amp;nbsp;метод контроллера и&amp;nbsp;передает ему&amp;nbsp;параметры. Например URL&amp;nbsp;&lt;tt>&amp;laquo;/controller/action/var1/var2&amp;raquo;&lt;/tt> вызывает &lt;tt>Controller::action($var1, $var2)&lt;/tt>. Но&amp;nbsp;вы можете поменять эту&amp;nbsp;логику при&amp;nbsp;помощи Роутов.&lt;br />
Некоторые возможности вашего приложения могут быть достойны вынесения в&amp;nbsp;отдельные программы. Плагин &amp;mdash; это&amp;nbsp;пакет Моделей, Контроллеров и&amp;nbsp;Отображений для&amp;nbsp;достижения определенной цели, который может подключаться сразу к&amp;nbsp;нескольким приложениям. Например Система управления пользователями или&amp;nbsp;Система блога могут быть универсальными и&amp;nbsp;подключаться на&amp;nbsp;несколько сайтов одновременно.&lt;/div>&lt;br />
&lt;b>Удалено:&lt;/b>&lt;br />
&lt;div class="deletions">&lt;strong>Ту би&amp;nbsp;континед...&lt;/strong>&lt;/div>&lt;/div>
</description>
</item>
</channel>
</rss>
