Ruby HER ORM работает хорошо, но я получаю неожиданное сообщение - PullRequest
0 голосов
/ 26 сентября 2019

Это моя модель Her ORM

module App
  module API
    class Period
      include Her::Model

      collection_path 'api/clients/:client_acronym/periods'
      parse_root_in_json true, format: :active_model_serializers

      attributes :begins_on, :ends_on, :stat_billed_incidents

      scope :begins, ->(date) { where(begins_on: date) }
      scope :ends, ->(date) { where(ends_on: date) }
      scope :for_client, ->(acronym) { where(client_acronym: acronym) }

      belongs_to :client
    end
  end
end

И я могу сделать звонок:

App::API::Period.for_client('LC').all.map(&:dup)
=> [#<App::API::Period(<unknown path, missing `client_acronym`>) begins_on="2006-01-01" ends_on="2009-12-31" stat_billed_incidents=1>,
 #<App::API::Period(<unknown path, missing `client_acronym`>) begins_on="2010-01-01" ends_on="2011-12-31" stat_billed_incidents=369>,
 #<App::API::Period(<unknown path, missing `client_acronym`>) begins_on="2012-01-01" ends_on="2012-12-31" stat_billed_incidents=714>,
 #<App::API::Period(<unknown path, missing `client_acronym`>) begins_on="2013-01-01" ends_on="2013-12-31" stat_billed_incidents=1104>,
 #<App::API::Period(<unknown path, missing `client_acronym`>) begins_on="2014-01-01" ends_on="2016-12-31" stat_billed_incidents=12>,
 #<App::API::Period(<unknown path, missing `client_acronym`>) begins_on="2017-01-01" ends_on="2019-01-01" stat_billed_incidents=36>,
 #<App::API::Period(<unknown path, missing `client_acronym`>) begins_on="2019-01-10" ends_on="2020-01-01" stat_billed_incidents=7>]

Путь на сервере хорошо создан:

 Started GET "/api/clients/LC/periods?client_acronym=LC"

за исключением того, что повторяется client_acronym, если я делаю запрос без использования областей, я должен использовать параметр options, но добавляется то же самое предупреждающее сообщение:

APP::API::Period.find('current', _client_acronym: 'LC')eriod.find('current', _client_acronym: 'LC')
=> #<APP::API::Period(<unknown path, missing `client_acronym`>) begins_on="2019-01-10" ends_on="2020-01-01" stat_billed_incidents=7>

снова URL был сформирован, и этоsi лучше, потому что не добавляет дополнительный параметр

Started GET "/api/clients/LC/periods/current

Я добавил к различным запросам, чтобы получить больше примеров, я попробовал разные убеждения, и всегда получаю один и тот же результат, правильный объект, но с этим предупреждением/ сообщение об ошибке, как этого избежать.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...