Yii Framework Forum: Delete: Cancellazione Logice E Fisica - Yii Framework Forum

Jump to content

Page 1 of 1
  • You cannot start a new topic
  • You cannot reply to this topic

Delete: Cancellazione Logice E Fisica consiglio su come gestire entrambi le cancellazioni in un'app Rate Topic: -----

#1 User is offline   tune 

  • Junior Member
  • Pip
  • Yii
  • Group: Members
  • Posts: 75
  • Joined: 27-March 12

Posted 21 November 2012 - 04:52 AM

Ciao a tutti,
sto realizzando un'applicazione che prevede la cancellazione di entità sia logica che fisica sul DB.
diciamo che al 90% dei casi la cancellazione è di tipo logica assegnando un flag 0/1 etc etc...

ma in alcuni casi ho necessità di effetuare una cancellazione fisica.

ora:per la cancellazione logica, essendone la maggior parte dei casi sfrutto il metodo BeforeDelete intercettando la cosa e trasformando l'operazione in update...

mentre per il 2° caso, dovrei fare un flusso apparte che finisce in un bel "delete from tab where..." (canc. fisica)

quindi ho questi due tipi di cancellazioni in una stessa app.

consiglio: che strada mi consigliate di prendere?...io pensavo di sfruttare "onBeforeDelete" (anche se dovrei capire bene come funziona)..oppure stavo pensando di procedere diretto verso la creazione di un nuovo flusso che non sfruttasse il "Model->delete()" del framework per non incappare nel beforeDelete scritto per la cancellazione logica.


spero di essermi spiegato bene!...grazie cmq in anticipo!
tune.
0

#2 User is offline   sensorario 

  • Elite Member
  • Yii
  • Group: Moderators
  • Posts: 1,986
  • Joined: 07-September 10
  • Location:Cesena (Italy)

Posted 24 November 2012 - 12:52 AM

Ti sei spiegato benissimo. Posso dirti che mi è capitato di implementare la stessa cosa di recente ed io mi sono limitato ad aggiungere un campo "deleted" alla tabella (e conseguentemente un attributo "deleted" al model). Per farla breve, all'evento delete nel controller non elimino nulla, ma aggiorno il campo "delete".

Altra cosa molto importante che dovrai ricordarti, è che dovrai modificare il metodo search del model affinché non mostri i record "cancellati".
0

#3 User is offline   tune 

  • Junior Member
  • Pip
  • Yii
  • Group: Members
  • Posts: 75
  • Joined: 27-March 12

Posted 27 November 2012 - 03:19 AM

Essì, infatti ala fine ho optato per la creazione di un altro flusso di cancellazione "fisica" rispetto a quella "logica" già esistente.
quindi alla fine la cosa và...
ovviamente poi cè tutta una logica di visibilità legata al flag di eliminazione logica se è settato a "0/1"...

ovviamente la funzione di delete fisico non và a toccare per niente il delete() di Yii, ma al suo interno fa un CDbCommand per un delete fisico suo...

ciao!
0

Share this topic:


Page 1 of 1
  • You cannot start a new topic
  • You cannot reply to this topic

1 User(s) are reading this topic
0 members, 1 guests, 0 anonymous users