Ruby on Rails - classe caching?
-
19-09-2019 - |
Domanda
ho letto un articolo qui e ho usato i principi che vi si trovano a dare una controllo di gestione per i miei controllori. In sostanza si controlla per vedere quale controller sei e poi ho creare un array dicendo che se questa persona come può vedere quel controller, di trovare, trasmetterla.
L'autore dell'articolo, ha detto che i lettori non dovrebbero utilizzare il codice di esempio come era viziata e che essi dovrebbero utilizzare il suo plug-in (che ovviamente non è aggiornato ora). Ed egli disse:
"ci sono alcuni problemi con il codice di cui sopra durante l'esecuzione in modalità di produzione a causa dell'uso di variabili di classe e la classe nella cache."
Ho un test in mancanza e penso che potrebbe essere dovuto a questo, ma io non sono molto sicuro di quello che parte del codice che non dovrebbe usare. Ho avuto il seguente (in application.rb):
controller = params[:controller]
action = params[:action]
Ma ho cambiato che a:
controller = self.class.name
action = params[:action]
Come si accede il nome dell'azione correttamente? E, in generale, che tipo di cose che si può fare in modalità di sviluppo che non si può fare in produzione?
Soluzione
Avete considerato autorizzazioni in base un ruolo di plug-in, invece? Vedere la seguente questione StackOverflow:
Sono a conoscenza di eventuali problemi con l'utilizzo di produzione del codice che avete incollato in. Il plugin in questione potrebbe avere alcuni problemi a causa di un possibile abuso di @@ però, non ho ispezionato a fondo.