Как работать с документацией yii ?

Вот, разбираю создание блога в yii, и вижу, к примеру, такую конструкцию:


<?php $this->widget('zii.widgets.grid.CGridView', array(

    'id'=>'post-grid',

    'dataProvider'=>$model->search(),

    'filter'=>$model,

    'columns'=>array(

        'id',

        'title',

        'content',

        'tags',

        'status',

        'create_time',

        'update_time',

        'author_id',

        array(

            'class'=>'CButtonColumn',

        ),

    ),

)); ?>


[/code]


Пока что по этой конструкции могу сказать следующее:

- вызывается метод контроллера $this->widget(...) с параметрами 

[code]  - 'zii.widgets.grid.CGridView',

  - array('id'=>'post-grid','dataProvider'=>$model->search(), 'filter'=>$model,

    'columns'=>array(

        'id',

        'title',

        'content',

        'tags',

        'status',

        'create_time',

        'update_time',

        'author_id',

        array(

            'class'=>'CButtonColumn',

        ),

    ),

)



И что дальше ? Где искать описание этого метода и описание параметров этого метода ?

Идти в раздел API ? Или открывать исходники ?

Пока что работаю исключительно методом "тыка" - поменял, посмотрел что получилось…

В лучшем случае открываю поиск по сайту.

Например, когда надо было сделать сортировку постов по дате создания, то

вот этот вот параметр ‘criteria’ => array(‘order’ => ‘update_time desc’,)

в $dataProvider=new CActiveDataProvider(‘Post’,…);

нашел только благодаря поиску по сайту.

Как другие люди работают ? Есть какая-то система ?

Если можно, поделитесь…

http://www.yiiframework.com/doc/api/

тут вам и замечательный поиск, и описание атрибутов и методов часто вполне достаточное для понимания

Хорошо, вот нашел для контроллера public метод widget():


public mixed widget(string $className, array $properties=array ( ), boolean $captureOutput=false)

$className 	string 	the widget class name or class in dot syntax (e.g. application.widgets.MyWidget)

$properties 	array 	list of initial property values for the widget (Property Name => Property Value)

$captureOutput 	boolean 	whether to capture the output of the widget. If true, the method will capture and return the output generated by the widget. If false, the output will be directly sent for display and the widget object will be returned. This parameter is available since version 1.1.2.

{return} 	mixed 	the widget instance when $captureOutput is false, or the widget output when $captureOutput is true.


Creates a widget and executes it.

Беру из примера string $className = ‘zii.widgets.grid.CGridView’

И где мне искать вот это - zii.widgets.grid.CGridView ?

Или вот еще часто встречается такой widget class : ‘zii.widgets.CListView’ ?

И что за зверь этот widget, хоть ты тресни, никак не могу уловить суть…

http://www.yiiframework.com/doc/api/CWidget

Спасибо, конечно. Но хочется ускорить процесс изучения и начинать уже кодировать по настоящему.

Я писал:

Беру из примера string $className = ‘zii.widgets.grid.CGridView

И где мне искать вот это - zii.widgets.grid.CGridView ?

Или вот еще часто встречается такой widget class : ‘zii.widgets.CListView’ ?


Если бы я тогда знал, я бы ответил так:

zii.widgets.grid - это каталог /framework/zii/widgets/grid/,

а CGridView - файл CGridView.php в этом каталоге, в котором собственно

определяется класс "gii-расширения" - CGridView.

Описание этого класса с исчерпывающими примерами его применения можно найти в разделе API.

А что касается widget, можно пока ограничиться примерами его применения. Полное

понимание этой концепции придет позже.