[Solved] Cgridview Urlmanager Behaves Different In Modules

When I do not set the urlManager parameter appendParams in my configuration there is a difference between how CGridView handles url between the main application and the modules in that same application.

CGridView acts as if ‘appendParams’=>false is set in the main application, while it acts as if ‘appendParams’=>true is set in all modules. This can be seen in the links for pagination and sorting of the CGridViews.

Does anyone know what causes this difference?

Searching the forum did bring an indication of what is the problem.

When using modules the proper configuration of the url manager seems to be:


	'urlManager'=>array(

		'showScriptName'=>false,

		'urlFormat'=>'path',

		'rules'=>array(

			'<controller:\w+>/<id:\d+>'=>'<controller>/view',

			'<controller:\w+>/<action:\w+>/<id:\d+>'=>'<controller>/<action>',

			'<controller:\w+>/<action:\w+>'=>'<controller>/<action>',

			'<module:\w+>/<controller:\w+>/<action:\w+>'=>'<module>/<controller>/<action>' ,

		),

	),



Adding the last line solved the problem of CGridView url’s being different in modules.