2015-06-18 18 views
10

Questa potrebbe essere una domanda molto semplice ma non trovo nulla a riguardo nei documenti Waterline.Come creare una nuova istanza di modello di linea di galleggiamento senza salvarlo

Come è possibile ottenere un'istanza di un modello Waterline senza salvarlo immediatamente.

Model.create(data); // already written to database 

Sto cercando qualcosa di simile

var user = User.new(data); // new instance, not persistent so far 
user.doSomething(withThis); // call method on instance 
user.save(); // Now write it to database 

Grazie

+0

Alcuni di questi potrebbe essere quello che stai cercando. http://sailsjs.org/#!/documentation/concepts/ORM/Lifecyclecallbacks.html – Fissio

+0

Non penso che questo sia esposto nell'interfaccia pubblica, potrebbe * essere * possibile farlo ricorrendo a metodi privati ​​... –

+1

Penso di essere principalmente alla ricerca di questo perché sono abituato a farlo provenire da Ruby on Rails. Alla fine non è necessario creare un'istanza senza scriverla sul db. Potresti voler fare qualcosa con l'input dell'utente (password hash, convalidarlo, creare dati aggiuntivi, ecc.) Prima di scriverlo, ma la validazione/risanamento/manipolazione dei dati può essere ottenuta usando gli hook. Per chiunque abbia la stessa domanda: https://github.com/balderdashy/waterline-docs/blob/master/models/lifecycle-callbacks.md –

risposta

3

Sembra che si possono utilizzare javascript di base di un'istanza. Dai un'occhiata a questo problema se non è sicuro che sia stato corretto ma puoi seguire le briciole da lì.

https://github.com/balderdashy/waterline/issues/763

+1

"... puoi seguire le briciole da lì" - my la vita come programmatore. –

+0

Sì, questo praticamente lo riassume. –