Setstate

[rtl]

منظور ازsetState چیه؟ من کد زیر رو زدم بعد لاگین تو کامپوننت:[/rtl]


$this->setState('username', $record->username);

[rtl]الان چطوری تو ویو ازش استفاده کنم؟[/rtl]

[rtl][font="Tahoma"]بعد از لاگین شاید بخوای یک سری فیلد رو جاهای مختلفی استفاده کنی، اونها رو با setState ست میکنی (اگر اشتباه نکنم بر اساس session عمل میکنه)

اینطوری نیازی به کوئری دوباره نداره.

سپس اینطوری استفاده میکنی:[/font][/rtl]


Yii::app()->user->username 

[rtl]پس موضوع این چیه:[/rtl]


Yii::app()->session;

[rtl][font="Tahoma"]همونطور که گفتم مطمئن نیستم setState بر اساس سشن یا کوکی یا هر چیز دیگه ای عمل میکنه چون توی جزئیاتش نرفتم. مهم اینه که یک متغییر در سطح کلاس user ست میکنه که از همه جا قابل دسترسه.

Yii::app()->session هم که کلاس کار با سشن هاست، برای ست کردن و خوندن سشن ازش استفاده میشه.

شاید اگر setState بر اساس سشن عمل میکنه، یه جایی به همین Yii::app()->session میرسه و با همین سشن رو ست میکنه.

در هر حال Yii::app()->session و Yii::app()->user مستقل عمل میکنند.

[/font][/rtl]