# Cancellazione automatica di eventi passati

**URL:** <https://www.ruby-forum.com/t/cancellazione-automatica-di-eventi-passati/180697>\
**Category:** IT\
**Created:** [December 26, 2009, 3:13pm UTC](https://www.ruby-forum.com/t/cancellazione-automatica-di-eventi-passati/180697 "2009-12-26T15:13:36Z")\
**Posts on this page:** 2\
**Page:** 1

<div class="post-metadata">

**Author:** ![a-mj](https://www.ruby-forum.com/letter_avatar_proxy/v4/letter/a/d07c76/32.png) [@a-mj](https://www.ruby-forum.com/u/a-mj)\
**Post date:** [December 26, 2009, 3:13pm UTC](https://www.ruby-forum.com/t/cancellazione-automatica-di-eventi-passati/180697/1 "2009-12-26T15:13:36Z")

</div>

Ciao a tutti e buon Natale!!!  
Qual Ã¨ il metodo piÃ¹ comodo per far sÃ¬ che un evento inserito si  
cancelli automaticamente una volta passato un giorno dalla sua data?  
Spiego meglio, in pratica ho una classe “evento”, con un campo  
“datatime”, e semplicemente vorrei che nella index degli eventi non si  
vedessero piÃ¹ gli eventi passati(precisamente, quelli che sono passati  
da piÃ¹ di 24 ore) se non esplicitamente richiesti dall’utente(cliccando  
tipo su “eventi passati” o “archivio eventi”).  
Che strada devo intraprendere? L’idea sarebbe di modificare il metodo  
index, creando un array di eventi passati e uno di eventi futuri, e  
modificare nella view la visualizzazione: farei vedere la lista di  
eventi futuri, e sotto un link “archivio eventi” che se cliccato apre  
una nuova pagina (oppure mostra una div nascosta) con la lista di eventi  
passati…l’idea ce l’ho perÃ² non saprei proprio cosa fare per  
realizzarla…  
Vi ringrazio molto  
Giorgio

---

<div class="post-metadata">

**Author:** ![a-mj](https://www.ruby-forum.com/letter_avatar_proxy/v4/letter/a/d07c76/32.png) [@a-mj](https://www.ruby-forum.com/u/a-mj)\
**Post date:** [December 26, 2009, 3:41pm UTC](https://www.ruby-forum.com/t/cancellazione-automatica-di-eventi-passati/180697/2 "2009-12-26T15:41:57Z")

</div>

Giorgio A. ha scritto:

> modificare nella view la visualizzazione: farei vedere la lista di  
> eventi futuri, e sotto un link “archivio eventi” che se cliccato apre  
> una nuova pagina (oppure mostra una div nascosta) con la lista di eventi  
> passati…l’idea ce l’ho però non saprei proprio cosa fare per  
> realizzarla..  
> Vi ringrazio molto  
> Giorgio

se vuoi due liste nella stessa pagina, nella action ‘index’ potresti  
usare qualcosa del genere:

@eventi\_futuri = Evento.find(:all, :conditions =\> [‘data\_evento \> ?’,  
Date.today])

@eventi\_passati = Evento.find(:all, :conditions =\> [‘data\_evento \< ?’,  
Date.today])

poi nella view scorri i due array (@eventi\_futuri.each do {|evento|  
…tuo codice… }) .

se invece vuoi due pagine separate, allora dovrai avere due action  
separate: gli eventi futuri li lasci nella index, quelli passati  
potresti metterli in una action ‘archive’ o un nome a te più congeniale.

ovviamente nel secondo caso dovrai stabilire come impostare la route che  
punta all’archivio eventi, controlla il file config/routes.rb per vedere  
alcuni esempi.

ciao e buone feste 😉  
A.
