Sto lavorando su una funzionalità che consente semplicemente a un utente guest di eseguire un'azione un certo numero di volte prima di richiedere l'accesso per \ creare un account. In questo caso, possono votare le foto in una galleria 5 volte prima che l'app chieda loro di creare un account.
La mia soluzione è approssimativamente la seguente.
- Al caricamento iniziale, imposta cookie con vote_count = 1;
- recupera e incrementa lo spartito ogni volta che un utente vota;
- Quando vote_count = 5, reindirizza l'utente alla pagina chiedendo loro di accedere o registrarsi. (ovviamente l'utente può cancellare i propri cookie o utilizzare un altro browser, ecc., ma non mi interessa in questo momento).
Il mio problema è dove implementare questo codice.
- Anche se chiamerò questa funzione solo su una rotta, ritengo che il controller sia nel posto sbagliato perché aggiunge un bel po 'di codice, e se cambio il numero di volte che un utente può votare, sto cambiando il codice nel controller (forse non è una brutta cosa?)
- Non credo che questo dovrebbe vivere in un file helpers.php perché non è necessario da nessun'altra parte nell'app.
- Credo che potrei creare la sua classe e potrebbe vivere come metodo statico, ma ritengo che i metodi statici siano i migliori per funzionalità in cui restituiscono sempre lo stesso valore e hanno lo stesso risultato indipendentemente da dove sono chiamati .
Per mettere questa in una buona domanda. Qual è un buon modo OOP di implementare ciò che è in linea con Laravel?