         res.push model(m)
       @[api_name] res
 
-    @.api()[api_name].read(@.id).done callback
+    api = connector.get api_name
 
-lazy_single_get_fn = (id_param, api_name, name, model, options) ->
+    api.read(@.id).done callback
+
+lazy_single_get_fn = (id_param, api_name, name, model, connector, options) ->
   if typeof @[id_param] != 'function'
     console.error 'External key not an observable: ' + id_param
     return false


      callback = callbackOrObservable

    if options.belongs_to?
      @.api()[api_name].read(options.belongs_to, @.id, params).done callback
    else
      @.api()[api_name].read(@.id, params).done callback

single_get_fn = (id_param, api_name, name, model, options = {}) ->
  (params = {}, callbackOrObservable) =>
    callback = (data) =>
      @[name] model(data)

      callback = callbackOrObservable
    ###

    model.get_one @[id_param](), callback

lazy_get_fn = (id_param, api_name, name, model, connector, options) ->
  unless callback?
    callback = (data) =>
      res = []
