My tables have LanguageId field and I want to select records that have LanguageId == Yii::app()->language. Can anyone give me a tip how to implement it without writing everytime mode()->findAll('LanguageId='.Yii::app()->language). Maybe as CActiveRecordbehavior.
hi
have a look here
http://www.yiiframew…oc/cookbook/30/
I think this is what you need
1.0.5 will have this built-in with 'named scopes' that you can define in a scopes array in the model
if you get Yii through subversion this is already in the trunk
and you can get the new docs here :
http://code.google.c…946&spec=svn946
look at the end of page - green section
hope this helps
Quote
http://www.yiiframew…oc/cookbook/30/
I think this is what you need
1.0.5 will have this built-in with 'named scopes' that you can define in a scopes array in the model
if you get Yii through subversion this is already in the trunk
and you can get the new docs here :
http://code.google.c…946&spec=svn946
look at the end of page - green section
Thanks a lot. I saw cookbook article about named scope features, but I wanted some fully transparent solution e.g. add language parameter in beforeContruct event with new getDbCriteria and mergeWith methods. But now I think that named scope is better solution here - it's more controlled and without "side effects".
With named scopes, you can also implement the transparent way that you like by overriding defaultDbCriteria() method.
Quote
Oh nice addition, I didn't see this method yet. Thank you!
I just checked in this when reading your post. ![]()
Quote
![]()
Will this method be included in 1.0.5? I don't see it in last trunk revision.
it's in branches/1.0/
I think you just need to get CActiveRecord
(I think …)