CacheControl / CacheControl/json-rules-engine

Support for optional object properties

Đang mở
#217 1 bình luận 0 reaction 0 người được giao Xem trên GitHub
Ngôn ngữ chính
JavaScript
Star
3.1k
Fork
507
Chỉ số merge pull request
Không có pull request nào được merge trong 30 ngày

Mô tả

Let's say we have the following Fact:
```
{
"firstName": "John",
"lastName" : "doe",
"age" : 26,
"address" : {
"streetAddress": "naist street",
"city" : "Nara",
"postalCode" : "630-0192"
},
"phoneNumbers": [
{
"type" : "iPhone",
"number": "0123-4567-8888"
},
{
"type" : "home",
"number": "0123-4567-8910"
}
]
}
```
The following rule snippet should return true in my understanding:

```
{
fact: 'a',
path: `$..phoneNumbers..title`,
operator: 'doesNotContain',
value: 'SOMETITLE'
},
```

However this will evaluate to false, as "title" is not present in the object.
The actual use case I have is that the dynamic fact ist an array of objects which can be an empty array sometimes (due to input params for the fact).

Supporting this use case would be very valuable, otherwise additional custom operators are necessary.

Hướng dẫn đóng góp

Chưa lập chỉ mục được hướng dẫn đóng góp cho kho mã nguồn này

Hướng nghiên cứu

Không có tệp, bài kiểm thử hoặc điểm vào nào được nêu tên. Tái hiện sự thật và quy tắc đã cung cấp với tiêu đề còn thiếu và một mảng đối tượng rỗng, sau đó lần theo đường dẫn JSON và phép đánh giá doesNotContain; được xem là hoàn tất khi các trường hợp thuộc tính tùy chọn được yêu cầu trả về kết quả mong đợi mà không cần một toán tử tùy chỉnh.

Do mô hình lập chỉ mục viết ra từ nội dung của issue.

Đánh giá

Công nghệ
javascript
Lĩnh vực
backend
Loại issue
Tính năng
Độ khó
3/5
Thời gian dự kiến
1-2 ngày
Mức độ hoạt động
Đình trệ
Độ rõ ràng
Khá rõ ràng
Mức phù hợp với người mới
35/100

Nhận issue mới trong hộp thư của bạn

Bản tóm tắt ngắn những issue GitHub phù hợp với người mới.