Accessrules E Checkacess Per Diversi Tipi Di Utente

Ciao! Credo di aver letto tutte le guide in rete, ma ho le idee ancora più confuse di prima.

Nella mia app ho 4 tipologie di utente, caratterizzati dal valore ‘role’ nella tabella User.

Come posso fare per differenziare la visualizzazione di pezzi di codice nelle pagine o di intere view?

Ho seguito questa semplice guida, ma senza risultati :( aiuto :unsure:

come va ? hai chiarito le idee? anche io ho lo stesso dubbio ?

Ti consiglierei il modulo Rights, molto comodo per quello che vuoi fare!

Ciao, si ho risolto. In realtà la mia applicazione non necessitava di chissà quanti controlli, nel senso che quando creo un utente gli assegno un ruolo, poi dovevo filtrare parti di codice nella app e non permettere l’accesso a determinate action. Ho risolto seguento questa guida.

Poi per ogni controller ho definito dei filtri, a titolo di esempio





public function filters()

{

return array(

	'createContext + create'

	);

}




public function filtercreateContext($filterChain)

{

if(!Yii::app()->user->checkAccess(User::ROLE_ADMIN.','.User::ROLE_SPECIALIST)){

	throw new CHttpException(404,'');

}


$filterChain->run();

}



Non so se sia il modo migliore di procedere, ma per me va benissimo. Avevo la consegna del lavoro a breve e mi è sembrata la via migliore, evitanto lunghi e tediosi RBAC, nuove tabelle per ogni modulo a cui accedere, etc :)