Немного не понравилось как реализованы вьюхи. Ну или я не очень понял идеи. Вроде как MVC - про объекты всегда было, а тут вьюхи - обычные портянки. Не очень понятно куда пихать вспомогательные функции для вьюх - в модель, контроллер или отдельный вспомогательный класс. Куча отдельных файлов тоже немного напрягает - иногда даже путаюсь когда работаю с несколькими видами нескольких моделей. В общем, сложилось какой то ощущение что тут всё не совсем трувэй. Я ничего против не имею, и вообще я особо не шарю. Поэтому, надеюсь, что гуру направят на путь истинный и помогут вкурить суть
Немного конкретики. Вот не понравилась мне реализация менюхи для операций над моделькой, хотя это наверное про Gii больше, однако.
Понятно, что у разных вьюх могут быть разные менюхи, но для основных операций менюха фактически одна, что я и сделал:
Код: Выделить всё
public static function makeMenu($action = '*', $id = 0)
{
$return = array();
if($action != 'index' && $action != 'tree')
$return[] = array('label'=>'List Tags', 'url'=>array('index'));
if($action != 'admin')
$return[] = array('label'=>'Manage Tags', 'url'=>array('admin'));
if($action != 'create')
$return[] = array('label'=>'Create Tag', 'url'=>array('create'));
if($action == 'view' || $action == 'update')
$return[] = array('label'=>'<hr>');
if($action == 'view')
$return[] = array('label'=>'Edit Tag', 'url'=>array('update', 'id'=>$id));
if($action == 'update')
$return[] = array('label'=>'View Tag', 'url'=>array('view', 'id'=>$id));
if($action == 'view' || $action == 'update')
$return[] = array('label'=>'Delete Tag', 'url'=>'#', 'linkOptions'=>array('submit'=>array('delete','id'=>$id),'confirm'=>'Are you sure you want to delete this item?'));
return $return;
}
В общем, подсказывайте кто что может
Зараенее огромное спасибо