Method: ActiveModel::Datastore::ClassMethods#find_by
- Defined in:
- lib/active_model/datastore.rb
#find_by(args) ⇒ Model?
Finds the first entity matching the specified condition.
352 353 354 355 356 357 358 359 360 361 |
# File 'lib/active_model/datastore.rb', line 352 def find_by(args) query = CloudDatastore.dataset.query name query.ancestor(args[:ancestor]) if args[:ancestor] query.limit(1) query.where(args.keys[0].to_s, '=', args.values[0]) query_results = retry_on_exception(operation: 'run query') do CloudDatastore.dataset.run query end from_entity(query_results.first) end |