Module: CassandraORM::Model::Persist
- Included in:
- CassandraORM::Model
- Defined in:
- lib/cassandra-orm/model/persist.rb
Instance Method Summary collapse
- #destroy(options = {}) ⇒ Object
- #destroy!(options = {}) ⇒ Object
- #save(options = {}) ⇒ Object
- #save!(options = {}) ⇒ Object
Instance Method Details
#destroy(options = {}) ⇒ Object
16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 |
# File 'lib/cassandra-orm/model/persist.rb', line 16 def destroy = {} @errors.clear return false if send_callback(:before_destroy) == false hash = primary_key_hash keys, values = hash.keys, hash.values conditions = .delete(:if) || {} cql = cql_for_delete keys, conditions.keys stmt = session.prepare cql values += conditions.values row = execute('destroy', stmt, arguments: values).first if conditions.empty? || row['[applied]'] @persisted = nil true else append_error :'[primarykey]', :conditions end end |
#destroy!(options = {}) ⇒ Object
34 35 36 37 38 |
# File 'lib/cassandra-orm/model/persist.rb', line 34 def destroy! = {} result = destroy fail DestroyFailure unless result result end |
#save(options = {}) ⇒ Object
6 7 8 |
# File 'lib/cassandra-orm/model/persist.rb', line 6 def save = {} new? || [:exclusive] ? _create() : _update() end |
#save!(options = {}) ⇒ Object
10 11 12 13 14 |
# File 'lib/cassandra-orm/model/persist.rb', line 10 def save! = {} result = save fail SaveFailure unless result result end |