Sono molto nuovo sia per Scala che per Slick e nel tentativo di impararlo sto scrivendo una piccola applicazione che funziona con un semplice database.Scala Slick e tipi complessi nel mio database
La maggior parte della mia precedente esperienza proviene da .Net e Entity Framework, quindi mi chiedevo se mi piace in Entity Framework con l'attributo ComplexType
se Slick mi consente di fare lo stesso.
Fondamentalmente una delle mie tabelle è una relazione 1-1 e per alcune di esse preferirei semplicemente creare un oggetto e usarlo come un tipo complesso. Ovviamente nel database ci sono solo colonne in più sul tavolo, ma mi chiedevo se Slick potesse mappare quelle colonne su un oggetto nella mia classe Table
. Vedi l'esempio qui sotto.
Utilizzerò un esempio di voce Blog.
La mia classe principale che estende Table è BlogEntry
e contiene il testo della voce. Quindi dì che desideravo in quella classe un'altra classe chiamata EntryDetails
che contenesse il tempo di pubblicazione della voce e l'ora dell'ultimo aggiornamento.
Nel database tutti questi campi si troveranno nella stessa tabella, ma quando letti in esso sarà un oggetto contenente l'altro oggetto. È possibile con Slick?
Sì, è possibile. È necessario [implementare un 'TypeMapper' personalizzato]] (http://slick.typesafe.com/doc/1.0.1/lifted-embedding.html#user-defined-functions-and-types) per quello. (Scriverò una vera risposta più tardi.) – Carsten
Impressionante grazie mille. Sì, quando lo farai, accetterò come risposta. Grazie mille per la veloce risposta. – twreid
Hai risolto il tuo problema con TypeMapper? Hai ancora bisogno di un campione su come farlo? – dirceusemighini