小编Jan*_*Jan的帖子

如何按特定对象键对数组中的值求和?

我有一个 js 对象数组,如下所示:

var objArr = [
     {"Country": "US", "City": "MyCity1", "2017-07-12": "1", "2017-07-13": "2"},
     {"Country": "US", "City": "MyCity2", "2017-07-12": "2", "2017-07-13": "2"},
     {"Country": "CN", "City": "MyCity1", "2017-07-12": "5", "2017-07-13": "7"},
     {"Country": "CN", "City": "MyCity2", "2017-07-12": "5", "2017-07-13": "7"}
   ]
Run Code Online (Sandbox Code Playgroud)

我想创建一个新数组,其中国家/地区是唯一的,但日期也应该相加。

{"Country": "US", "2017-07-12":  "3", "2017-07-13": "4"},
{"Country": "CN", "2017-07-12": "10", "2017-07-13": "14"}
            ^^^^                ^^^^                ^^^^   
Run Code Online (Sandbox Code Playgroud)

我很难理解它。我是否必须先过滤,以某种方式减少它,重新映射它,......我不知道从哪里开始?任何帮助将不胜感激,谢谢!

javascript arrays object filter ecmascript-6

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

如何将带有对象的数组保存到UserDefaults

My Object符合新的Swift 4 Codeable协议.如何保存这些对象的数组UserDefaults

struct MyObject: Codeable {
    var name: String
    var something: [String]
}

myObjectsArray = [MyObject]() // filled with objects
UserDefaults.standard.set(myObjectsArray, forKey: "user_filters")
Run Code Online (Sandbox Code Playgroud)

错误

由于未捕获的异常'NSInvalidArgumentException'而终止应用程序,原因:'尝试插入非属性列表对象

userdefaults swift4

4
推荐指数
1
解决办法
2985
查看次数

如何在bash中将json响应转换为yaml

我用jq从json文件中读取数据。我想将结果附加到yaml文件中,但无法正常工作。我对Shell编程很陌生。我的目标是在yaml文件中将“用户”附加到现有的“用户” -Array中。

这是我的json文件:

#$DEFAULTS_FILE

{"users":
  [
    {"name":"pi",
      "gecos": "Hypriot Pirate",
      "sudo":"ALL=(ALL) NOPASSWD:ALL",
      "shell": "/bin/bash",
      "groups":"users,docker,video",
      "plain_text_passwd":"pi",
      "lock_passwd":"false",
      "ssh_pwauth":"true",
      "chpasswd": {"expire": false}
    },
    {"name":"admin",
      "gecos": "Hypriot Pirate",
      "sudo":"ALL=(ALL) NOPASSWD:ALL",
      "shell": "/bin/bash",
      "primary-group": "users",
      "groups":"users,docker,adm,dialout,audio,plugdev,netdev,video",
      "ssh-import-id":"None",
      "plain_text_passwd":"pi",
      "lock_passwd":"true",
      "ssh_pwauth":"true",
      "chpasswd": "{expire: false}",
      "ssh-authorized-keys": ["ssh-rsa abcdefg1234567890 YOUR_KEY@YOURHOST.local"]
    }
  ]
  }
Run Code Online (Sandbox Code Playgroud)

我用它过滤:

cat $DEFAULTS_FILE | jq .users

我不知道如何将json转换为Yaml。

我的预期结果应该是:

users:
  - name:                pi
    gecos:               "Hypriot Pirate"
    sudo:                ALL=(ALL) NOPASSWD:ALL
    shell:               /bin/bash
    groups:              users,docker,video
    plain_text_passwd:   pi
    lock_passwd:         false
    ssh_pwauth:          true
    chpasswd: { expire:  false } …
Run Code Online (Sandbox Code Playgroud)

bash shell json yaml jq

4
推荐指数
7
解决办法
4354
查看次数

如何使用 Kustomize 创建带有 .env 的 configMap

我有一个 NextJS 应用程序,需要安装 .env 文件。我通常通过提供 configMap 来做到这一点:

kind: ConfigMap
apiVersion: v1
metadata:
  name: frontend-configmap
  namespace: default
data:
  .env: |-
    NEXT_PUBLIC_API_URL=http://my.domain.com
    API_URL=http://my.domain.com
Run Code Online (Sandbox Code Playgroud)

但如何使用 Kustomize 做到这一点呢?

我尝试使用envs,但如何获取里面的值?

configMapGenerator:
  - name: frontend-configmap
    envs:
      - .env

Run Code Online (Sandbox Code Playgroud)

先感谢您

environment-variables kubernetes kustomize

4
推荐指数
1
解决办法
1万
查看次数

Mongoid"act-as-tree"与"recursively_embeds_many"vs."mongoid-tree"

我对mongoid和rails很新.所以我有一些麻烦让树结构工作:

我找到了三个"解决方案"来构建

mongoid-tree(这是最实际的) https://github.com/benedikt/mongoid-tree

并且mongoid提供了recursively_embeds_more的解决方案

mongoid_acts_as_tree https://github.com/saks/mongoid_acts_as_tree

我的目标是为音乐风格制作一棵树,可以在不同的模型中引用/嵌入.

  • -屋
  • --- Tech House
  • ---最小的房子
  • -民间
  • ---非洲
  • ---亚洲
  • -金属
  • - -重金属
  • - -死亡金属
  • .....

我的模型现在看起来像这样:

class Musicstyle
  include Mongoid::Document
  include Mongoid::Timestamps

  include Mongoid::Tree # mongoid-tree Version
  recursively_embeds_many # mongoids version itself

  field :musicstyle, type: String
  field :description, type: String
  field :parent
end
Run Code Online (Sandbox Code Playgroud)

和观点

<div class="field">
    <%= f.label :parent %>
    <%= f.select :parent,
                 Musicstyle.all.map { |m| [m.musicstyle, m._id] },
                 {:include_blank => "Select a parent (if needed)"} %>
</div>
Run Code Online (Sandbox Code Playgroud)

我现在搜索了几个小时的工作示例,没有成功.

也许有人可以为我提供一些代码以便更好地理解

任何帮助都会让我的一天

很多,非常感谢提前

ruby tree ruby-on-rails mongoid

3
推荐指数
1
解决办法
1448
查看次数

如何在rails中重定向非现有路由

我已经从具有良好页面排名的旧网站切换到RubyOnRails.

当然,所有链接现在都已破坏.当用户通过Google链接访问我的网站时,他会获得:

Routing Error

No route matches [GET] "/SOME_WRONG/URL/WITH/PARAMETERS"
Run Code Online (Sandbox Code Playgroud)

将用户在出错时重定向到我的root_url的最佳方法是什么?

我必须把这段代码放在哪里?

.htaccess?
application_controller?
application.rb?
routes.rb?
Run Code Online (Sandbox Code Playgroud)

非常感谢提前:-)

ruby ruby-on-rails ruby-on-rails-3

3
推荐指数
1
解决办法
961
查看次数

将示例代码重构为类不会引发重载函数的实例

我是 CPP 的新手,并尝试将此示例代码https://github.com/espressif/arduino-esp32/blob/master/libraries/WiFi/examples/WPS/WPS.ino “重构”为名为ApiClient`的类。然后我希望能够做这样的事情:

apiClient = ApiClient(myUrl);
apiClient.sendValue(key, value);
Run Code Online (Sandbox Code Playgroud)

除了函数调用之外,所有内容都会编译wifi.onEvent(WiFiEvent);。当我将整个示例代码复制粘贴到我的main.cpp文件中时,该示例正在运行。当我使用“重构”方法时,他们wifi.onEvent(WifiEvent)会抱怨。

确切的错误信息:

no instance of overloaded function "WiFiClass::onEvent" matches the argument list -- argument types are: (void (system_event_id_t event, system_event_info_t info)) -- object type is: WiFiClass

我知道该onEvent函数通常需要两个参数,但为什么这在示例代码中有效?我该如何解决这个问题?

这是我到目前为止所拥有的:

主程序



#include "WiFi.h"
#include <esp_wps.h>
#include <Hythe22.h>
#include <ApiClient.h>

#define DHTPIN 14
// ?accessKey=ist_NJu3tjPIBCYeJd6DGGBxzq14LvungHoK&bucketKey=B37GHBNK5HL3
#define API_URL "https://groker.init.st/api/events";

Hythe22 dht(DHTPIN);
ApiClient apiClient;
uint64_t chipid;
#define ESP_DEVICE_NAME String(chipid)


void setup()
{
  String apiUrl = "https://myApi.Endpoint.com/event";
  Serial.begin(115200); …
Run Code Online (Sandbox Code Playgroud)

c++ arduino esp32

3
推荐指数
1
解决办法
1393
查看次数

redmine中的语法高亮显示

使用redmine的大多数用户都是程序员.他们非常需要代码突出显示语法.

< pre >< code class="LANGUAGE_NAME" >

   Some Code

< /code>< /pre>
Run Code Online (Sandbox Code Playgroud)
  • 为了少写,作为redmine wiki的编辑
  • 我希望能够按下一个按钮或下拉字段,它围绕我选择的文本(如粗体,斜体,下划线,前,h1,h2等已经存在.)

也许有人可以建议一个插件,如果存在的话.或者向我展示编辑器发生的代码,因此我可以实现并将其作为插件提供.

非常感谢

redmine redmine-plugins

2
推荐指数
1
解决办法
4426
查看次数

如何grep一个yaml值

我尝试从 shell 中的 YAML 文件中获取一个值:

apiVersion: v1
items:
- apiVersion: v1
  kind: Pod
  spec:
    containers:
    hostIP: 12.198.110.192
    phase: Running
    podIP: 10.244.1.9
Run Code Online (Sandbox Code Playgroud)

随着kubectl get pods -l run=hello-kube -o yaml | grep podIP:我得到这个输出:

    podIP: 10.244.1.9
Run Code Online (Sandbox Code Playgroud)

我的目标是将该值保存在环境变量中,但我只得到key/value-pair:

export PODIP=$(kubectl get pods -l run=hello-kube -o yaml | grep podIP)
Run Code Online (Sandbox Code Playgroud)

shell grep yaml kubernetes

2
推荐指数
1
解决办法
6137
查看次数

使用域而不是 IP 地址进行 SSH

我有一个 ubuntu 16.04 @\xc2\xa0linode.com。

\n\n

我希望能够通过子域 (master.mydomainname.com) 而不是 IP (192.0.2.1) 登录。

\n\n
> hostname\ndomainname_master\n\n> cat /etc/hosts\n127.0.0.1     localhost\n127.0.1.1     ubuntu.members.linode.com ubuntu\n192.0.2.1     master.mydomainname.com mydomainname_master\n
Run Code Online (Sandbox Code Playgroud)\n\n

我在 cloudflare 有一个可用的 A 和 AAAA 记录子域,可以通过网络浏览器 (nginx) 访问该子域

\n\n

但当我尝试时

\n\n
root@master.mydomainname.com\n
Run Code Online (Sandbox Code Playgroud)\n\n

我无法连接:\n ssh:连接到主机 master.mydomainname.com 端口 22:没有到主机的路由

\n\n

有了 IP 本身,我就可以通过 SSH 进行连接了。

\n\n

我错过了什么?

\n

dns ssh linode ubuntu-16.04

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

为什么我的ruby案例陈述不起作用?

这有什么问题?是的,我可以做一个if else声明,但我想用case语句做.

在我的控制器中

query_limit = case current_user
                when nil
                  return 5
                when is_admin?
                  return 200
                when has_role?('registered')
                  return 20
                else
                  return 5
              end


NoMethodError (undefined method `is_admin?' for #<V1::MyController:123123123>):
Run Code Online (Sandbox Code Playgroud)

puts query_limit 当我这样做时,#总是ELSE:

 query_limit = case current_user
                    when nil
                      return 5
                    when current_user.is_admin?
                      return 200
                    when current_user.has_role?('registered')
                      return 20
                    else
                      return 5
                  end
Run Code Online (Sandbox Code Playgroud)

模型用户

class User
  def is_admin?
    self.has_role?('administrator')
  end

  def has_role?(the_role)
    self.roles.any? {|role| role.slug == the_role}
  end
end
Run Code Online (Sandbox Code Playgroud)

ruby ruby-on-rails case switch-statement

0
推荐指数
3
解决办法
2658
查看次数