Я использую Kohana 3 для создания веб-сайта, который имеет два приложения, приложение администрирования и фактический сайт frontend. Я разделил свои папки, чтобы разделить эти два приложения, таким образом, иерархия смотрит следующим образом:
/applications
/admin
/classes
/controller
/...
/site
/classes
/controller
/....
Мой вопрос, как я должен пойти о создании общей / образцовой папки. По существу и администратор и сам сайт воздействуют на те же данные, таким образом, слой базы данных и бизнес-логика остаются более или менее тем же. Таким образом мне, имеет смысл иметь единственную образцовую папку, находящуюся за пределами этих двух папок приложения. Это возможный достигнуть следующей иерархии:
/applications
/model --> Where model sits in a neatly generic location, accessible to all applications
/admin
/classes
/controller
/...
/site
/classes
/controller
/....
Заранее спасибо!
Вы можете сгруппировать все ваши общие модели в модуль. В основном, приложения и системные каталоги - это просто специальные модули.
Я не знаю, так ли обычно поступает Kohana, поскольку я лишь поверхностно знаком с иерархией папок Kohana, но вы можете сделать это довольно просто с помощью некоторых симлинков в файловой системе, если вы работаете на архитектуре unix/linux.
Вы можете изменить иерархию, сохранив при этом разделение на админскую и публичную части, следующим образом:
/application /classes /controller /admin /site /model /admin /site model.php helper.php
Таким образом, и админка, и сайт могут использовать общие хелперы и модели