Changing the way a CGridView is rendered from the configuration file, or through behaviors specified at the moment it is used, is handy to extend a CGridView without creating tons of different classes for it.
I am surprised that this is not in the default implementation, so I made my default CGridView implementation.
Generally we need to show one or more fields from a model that is related to another model used in CGridView.
For our case we will use two related models, which explain how to use model "A" fields in a CGridView that used model "B".
In this tutorial we will try to save cgridview filter(search) with title etc. basically we want to save two forms data i.e one represents filters and other data about filters like title, description etc. You can define your own structure for filter saving table here are some basic steps