小编And*_*ool的帖子

位烘烤中SRC_URI和FILESEXTRAPATHS_prepend之间的区别

为什么SRC_URI即使我们在FILESEXTRAPATHS_prepend变量中包含文件路径,也需要给出文件路径。喜欢:

SUMMARY = "Simple Hello application"
LICENSE = "MIT"
LIC_FILES_CHKSUM = "file://${COMMON_LICENSE_DIR}/MIT;md5=0835ade698e0bcf8506ecda2f7b4f302"

FILESEXTRAPATHS_prepend := "${THISDIR}/files:"

SRC_URI = "file://Hello_1.c \
           file://Hello_2.c \
              "

do_compile() {
         oe_runmake
}

do_install() {
         install -d ${D}${bindir}
         install -m 0755 Hello ${D}${bindir}
}
Run Code Online (Sandbox Code Playgroud)

在文件文件夹中,我有两个文件hello1.c和hello2.c。当我删除SRC_URI它时,输出以下错误,

ERROR: Hello-1.0-r0 do_compile: oe_runmake failed
Run Code Online (Sandbox Code Playgroud)

但是,如果我删除 FILESEXTRAPATHS_prepend它,则工作正常。

变量的目的是FILESEXTRAPATHS_prepend什么?

为什么SRC_URI即使在其中包含文件路径的情况下删除,也会出现错误FILESEXTRAPATHS_prepend?

bitbake yocto

3
推荐指数
2
解决办法
6470
查看次数

如何使用Firestore的安全规则验证数组值?

我有一个创建以下JSON结构的表单。

{  
   "reviewed":false,
   "title":"Just a title",
   "user":"UYV9TRKXfNW1NeCyFyfjZfagJ8B",
   "items":[  
      {  
         "age":"33",
         "experience":"Newcomer",
         "image":"https://image-url",
         "job":"Nerd",
         "name":"Testname",
         "party":"AAA",
         "type":"person"
      },
      {  
         "age":"33",
         "experience":"Newcomer",
         "image":"https://image-url",
         "job":"Informatiker",
         "name":"Testname",
         "party":"AAA",
         "type":"person"
      }
   ]
}
Run Code Online (Sandbox Code Playgroud)

如何使用Firestore的安全规则检查“项目”的值?有没有一种方法可以循环/迭代数组?

firebase google-cloud-firestore firebase-security-rules

3
推荐指数
2
解决办法
1150
查看次数

使用 pdfmake 将文本修复到 pdf 中最后一页的底部

对于一个项目,我使用 javascript 中的 pdfmake 即时提供 pdf 报价和发票。我想将包含签名字段的最后一个文本块附加到最后一页的底部。

我的 pdf docDefinition 是这样构建的:

return {
                content: [
                    getOfferLogo(), //Get the logo or empty string
                    getHeading(), //get the customer and business data (adress etc)
                    //the above is always the same
                    getText(), //get the textblock, created by user and always different
                    getSpecifics(), //get a table of payment specifications
                    getSignature() //get last textblock contaning signature fields etc, always the same
                ],
                styles: {
                    subheader: {
                        fontSize: 15,
                        bold: true,
                        alignment: 'center'
                    }
                },
                defaultStyle: { …
Run Code Online (Sandbox Code Playgroud)

javascript pdf pdfmake

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

Firestore-公司内用户的安全规则

我们当前的Firestore结构如下: 在此处输入图片说明

  • 目前,我们没有使用任何子集合
  • 用户具有他们所属公司的列表
  • 每个项目仅与1家公司关联
  • 项目属于公司,当在companyId字段中写入公司UID时

我的第一个问题是如何指定该数据库定义的安全规则?有一些最佳实践方法吗?

我们的第一个想法是这样做:

match /databases/{database}/documents/projects/{projectUid}/{document=**} {
allow read: if 
(/databases/$(database)/documents/projects/$(projectUid)/companyId) === 
(/databases/$(database)/documents/users/$(request.auth.uid)/companyId)
}
Run Code Online (Sandbox Code Playgroud)

但是根据文档,这意味着我们每个读取基本上需要3个读取(2个安全性查询和1个从DB实际读取)。这似乎是对查询的浪费。

有没有比这更好的方法了?我们正在考虑更改子集合:

  • 最后,我们将在根集合“ companies”和“ users”中存储所有用户的详细信息
  • 项目将是公司的子集合
  • 页面将是项目的子集合
  • ...等等
  • 并且公司将包含用户列表(而不是像现在这样)-但仅包含列表,而不包含用户详细信息

这样,我们可以使用与文档中类似的方法,其中每个匹配项都包含{companyId},在allow语句中,我们将使用类似

match /databases/{database}/documents/companies/{companyId}/projects/{projectId} {
    allow read: if
    exists(/databases/$(database)/documents/companies/$(companyId)/users/$(request.auth.uid));
}
Run Code Online (Sandbox Code Playgroud)

感谢您提供有关如何以最可扩展且最安全的方式构建它的任何建议。

firebase google-cloud-firestore firebase-security-rules

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

Firestore 在完全定义的 JSON 中找到未定义的值,键甚至不存在

我正在尝试将 JSON 对象上传到 Google Firestore。

将对象设置为 Firestore 文档时,我的代码会引发以下错误:

Error: Value for argument "data" is not a valid Firestore document. 
Cannot use "undefined" as a Firestore value 
(found in field audit.`20`.requests.`0`.lrEndTimeDeltaMs).
Run Code Online (Sandbox Code Playgroud)

现在我做的第一件事是在上传之前记录对象以检查未定义的值:

console.log(JSON.stringify(resultsToUpload));

return database
  .collection("foo1")
  .doc("bar1")
  .set(resultsToUpload);
Run Code Online (Sandbox Code Playgroud)

不仅在对象中定义了所有值,而且提到的字段audit.`20`.requests.`0`.lrEndTimeDeltaMs甚至不存在:

resultsToUpload = {  
  "audit":{   
    "20":{  
      "ronaldScore":3,
      "id":"network-requests",
      "requests":[  
        {  
          "url":"https://www.example.com/",
          "startTime":0,
          "endTime":62.16699999640696,
          "transferSize":15794,
          "resourceSize":78243,
          "statusCode":200,
          "mimeType":"text/html",
          "resourceType":"Document"
        }
      ]
    }
  }
}
Run Code Online (Sandbox Code Playgroud)

数据来自 Google Lighthouse Audit。

计算字符串化 JSON 对象的 UTF-8 字符串长度会得到 30 MB 的大小。

1) 定义了所有值(有些为空,这应该不是问题)。

2) JSON 中甚至不存在上述字段。

我的问题是:这怎么会发生?一个字段怎么会出现?另外:我将如何解决这个问题?

json undefined node.js firebase google-cloud-firestore

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