小编ben*_*tek的帖子

JSON API筛选器包含的资源

问题是关于JSON API规范以及请求的正确处理方式(我正在使用ruby on rails和json api resources gem,但这还是一个普遍的问题,我知道如何实现它,我只想遵循JSON的规则API位于:http : //jsonapi.org/format/

情况一:

  • 我想要所有架子
  • 我想把那些书架上的所有书都包括在内
  • 在这种情况下,我应该使用的get是: www.library.com/shelves?include=books

情况2:

  • 我想获取所有书籍,但仅获取标记为未读的书籍

  • 我应该使用的get是: www.library.com/books?filter[unread]=true

设计包含未读书籍的所有书架的要求的正确方法是什么?

想不通这个

www.library.com/shelves?include=books&filter[books.unread]=true

www.library.com/shelves?include=unread_books?<-必须指定其他资源,即未读的书

www.library.com/shelves?filter[books.unread]=true

最正确的方法是什么?

编辑

与我的技术负责人和其他一些程序员交谈后,在这种情况下,最优先选择第一个选项

json json-api jsonapi-resources

5
推荐指数
1
解决办法
5732
查看次数

如何将 lodash mapValues 与 typescript 一起使用

我有如下代码:

\n\n
  interface Item {\n    hours: number,\n    minutes: number,\n  }\n\n  interface DataPoint {\n    length: number,\n    conversation: {\n      a: number,\n      b: number,\n      [key: string]: number,\n    }\n  }\n\n  interface DecoratedDataPoint {\n    length: Item,\n    conversation: {\n      a: Item,\n      b: Item,\n      [key: string]: Item,\n    }\n  }\n
Run Code Online (Sandbox Code Playgroud)\n\n

我有一个像下面这样的函数,它使用了 lodashmapValues函数

\n\n
\n  function dataPointItem(val: number, total: number): Item {\n    return {\n      hours: Math.floor(val/60),\n      minutes: val%60,\n      percentage: Math.round((val/total)*100),\n    }\n  }\n\n  function decorateDataPoint(dataPoint: DataPoint, total: number): DecoratedDataPoint {\n    return {\n      length: dataPointItem(dataPoint.length, number)\n      conversation: _.mapValues(dataPoint.conversation, …
Run Code Online (Sandbox Code Playgroud)

typescript lodash

5
推荐指数
0
解决办法
1679
查看次数

主动存储 - 多个服务 - 直接上传未按预期工作

我在中定义了两项服务storage.yml

amazon:
  service: S3
  bucket: bucket1
  region: eu-central-1
  access_key_id: 321
  secret_access_key: 321

unsafe_files:
  service: S3
  bucket: unsafe-files
  region: eu-central-1
  access_key_id: 123
  secret_access_key: 123
Run Code Online (Sandbox Code Playgroud)

我对某些文件使用亚马逊服务,我想unsafe_files对其他文件使用该服务,以便我可以将其放入另一个s3存储桶中。

使用该服务的模型unsafe_files如下所示(非常简单):

class Customer < ActiveRecord::Base
  belongs_to :customer_image
end
Run Code Online (Sandbox Code Playgroud)
class CustomerImage < Image
  has_one_attached :file, service: Rails.configuration.settings[:unsafe_files_service]
end
Run Code Online (Sandbox Code Playgroud)

Rails.configuration.settings[:unsafe_files_service]只是unsafe_files

application.rb在我正在设置的轨道上

config.active_storage.service = :amazon因此默认情况下它使用amazon定义的服务storage.yml

现在我想使用 直接上传文件form_with,也很简单:

<%= form_with model: [@customer, CustomerImage.new] do |form| %>
  <%=
    form.file_field :file,
                    accept: 'image/jpeg',
                    direct_upload: true,
                    multipart: …
Run Code Online (Sandbox Code Playgroud)

ruby ruby-on-rails rails-activestorage ruby-on-rails-6

5
推荐指数
1
解决办法
1723
查看次数