Страница 1 из 1

контроллер с параметром и вью

Добавлено: 2011.01.31, 14:52
zibert02
есть такой контроллер

Код: Выделить всё

 public function actionAdmin($category_id) 
, почему вью не видит $category_id и приходится явно передавать

Код: Выделить всё

$this->render('admin',array(
            'model'=>$model,
                        'category_id'=>$category_id
        )); 

Re: контроллер с параметром и вью

Добавлено: 2011.01.31, 14:56
slavcodev
потому что гладиолусы (с)

Re: контроллер с параметром и вью

Добавлено: 2011.01.31, 14:56
slavcodev
а почему представление должно видеть переменную из метода контроллера?

Re: контроллер с параметром и вью

Добавлено: 2011.01.31, 15:16
zibert02
потому что они же связаны, плюс переменная явно передается в контроллер
вобщем как я понял нельзя, а почему интересно? удобно же

Re: контроллер с параметром и вью

Добавлено: 2011.01.31, 16:25
nightmare
а разве у вас $model не содержит $category_id ?

Re: контроллер с параметром и вью

Добавлено: 2011.01.31, 16:39
zibert02
да тут не в этом дело, параметр любой может быть
странно вобщето, почему вью не может иметь к нему доступ
семдарк интересно как прокоментирует?

Re: контроллер с параметром и вью

Добавлено: 2011.01.31, 16:51
karagodin
zibert02 писал(а):потому что они же связаны, плюс переменная явно передается в контроллер
вобщем как я понял нельзя, а почему интересно? удобно же
по вашему любая локальная переменная в экшене должна быть видима в представлении? не вижу ничего удобного. а не видно ее потому что все переменные во вью извлекаются из переданного в функцию рендера массива $data функцией extract(). http://www.yiiframework.com/doc/api/1.1 ... nal-detail

Re: контроллер с параметром и вью

Добавлено: 2011.01.31, 17:00
zibert02
karagodin писал(а):
zibert02 писал(а):потому что они же связаны, плюс переменная явно передается в контроллер
вобщем как я понял нельзя, а почему интересно? удобно же
по вашему любая локальная переменная в экшене должна быть видима в представлении? не вижу ничего удобного. а не видно ее потому что все переменные во вью извлекаются из переданного в функцию рендера массива $data функцией extract(). http://www.yiiframework.com/doc/api/1.1 ... nal-detail
протрите глазенки уважаемый yii прогромист
вопрос касался только переменных, которые передаются как параметр в акшин
речь о локальных переменных нигде не идет

Re: контроллер с параметром и вью

Добавлено: 2011.01.31, 17:12
karagodin
параметры передаваемые в функцию имеют такую же область видимости что и локальные переменные.
если передавать в представление параметры экшена автоматически, то вы перестаете полностью контролировать что передавать в представление, а что нет - теряется гибкость и увеличивается связность кода. что естественно плохо. так понятней?

Re: контроллер с параметром и вью

Добавлено: 2011.01.31, 17:16
zibert02
ну раз так правильно то фиг с ним

Re: контроллер с параметром и вью

Добавлено: 2011.01.31, 17:18
slavcodev
zibert02 писал(а):протрите глазенки уважаемый yii прогромист
как-то грубо это звучит :(

Re: контроллер с параметром и вью

Добавлено: 2011.01.31, 17:20
zibert02
ладно извиняюсь