小编Ada*_*edi的帖子

Mongoengine python3 Embedded Document 没有属性_is_document

我正在使用 mongoengine 创建我的文档,该文档的字段为 EmbeddedDocument。

但我收到以下错误:

AttributeError: 'EmbeddedDocument' 对象没有属性 '_is_document'

做了一些研究,我发现 mongoengine 的代码是用 python 2 编写的,并且确实可以使用 pip3 正确安装它。做了同样的事情还是不行。

class DataImportNodeInfo(EmbeddedDocument):

    provider_id = fields.IntField(required=False)
    carrier_name = fields.StringField(required=False)
    basepath = fields.StringField(required=False)
    log_tobe_imported = fields.ListField(required=False)


class DataImportConnectionInfo(EmbeddedDocument):

    host = fields.StringField(required=True)
    user_login = fields.StringField(required=False)
    user_pwd = fields.StringField(required=False)


class DataImportNode(DynamicDocument):

    # Meta variables
    meta = {
    'collection': str(KonnectDAConstants.DATA_IMPORT_NODES)
    }

    cmd = fields.StringField(required=True)
    import_source = fields.StringField(required=True)
    import_type = fields.StringField(required=True)
    active = fields.BooleanField(required=True)
    info = fields.EmbeddedDocument(DataImportNodeInfo, required=True)
    connection = fields.EmbeddedDocument(DataImportConnectionInfo, required=True)
Run Code Online (Sandbox Code Playgroud)

AttributeError: 'EmbeddedDocument' 对象没有属性 '_is_document'

django mongoengine django-rest-framework

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

将参数传递给node.js中的EventEmitter.on方法

我刚刚开始探索node.js,下面是我在node.js中学习事件处理的情况.

我有一个事件'loop'和一个函数'myLoopHandler'使用该方法附加到它

eventEmitter.on('loop',myLoopHandler);
Run Code Online (Sandbox Code Playgroud)

myLoopHandler的定义如下:

var myLoopHandler = function(){
for(i=1;i<=30;i++)
    console.log(i);
}
Run Code Online (Sandbox Code Playgroud)

然后我发出事件'循环':

eventEmitter.emit('loop');
Run Code Online (Sandbox Code Playgroud)

如何在eventEmitter.on方法中将一些参数传递给myLoopHandler函数?

我对任何其他实现同样目标的方式持开放态度.

javascript node.js

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

项目值作为键,嵌入式文档作为mongo的值

在mongodb中,我有一个结构文件:

{
    "phone":"123",
    "friends": {
                    "contacts":{
                                    "234":2,
                                    "345":5
                               }
               }
}
Run Code Online (Sandbox Code Playgroud)

我希望输出看起来像:

{
    "123": {
                "234":2,
                "345":5
           }
}
Run Code Online (Sandbox Code Playgroud)

我正在寻找多种解决方案。似乎并没有找到解决方案。

mongodb

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

Kafka Java Consumer已经关闭

我刚刚开始使用Kafka。我面对消费者的一个小问题。我已经用Java编写了一个使用者。

我收到此异常-IllegalStateException此使用者已经关闭。

我在以下行得到异常:

ConsumerRecords<String,String> consumerRecords = consumer.poll(1000);
Run Code Online (Sandbox Code Playgroud)

在我的使用者崩溃并出现异常之后,这种情况开始发生,当我再次尝试运行它时,它给了我这个异常。

这是完整的代码:

package StreamApplicationsTest;

import org.apache.kafka.clients.consumer.*;
import org.apache.kafka.common.serialization.StringDeserializer;

import java.util.*;

public class StreamAppConsumer {

public static void main(String[] args){
    int i = 0;
    //List<String> topics = new ArrayList<>();
    List<String> topics = Collections.singletonList("test_topic");
    //topics.add("test_topic");
    Properties consumerConfigurations = new Properties();
    consumerConfigurations.put(ConsumerConfig.BOOTSTRAP_SERVERS_CONFIG,"localhost:9092");
    consumerConfigurations.put(ConsumerConfig.KEY_DESERIALIZER_CLASS_CONFIG, StringDeserializer.class.getName());
    consumerConfigurations.put(ConsumerConfig.VALUE_DESERIALIZER_CLASS_CONFIG,StringDeserializer.class.getName());
    consumerConfigurations.put(ConsumerConfig.GROUP_ID_CONFIG,"TestId");

    Consumer<String,String> consumer = new KafkaConsumer<>(consumerConfigurations);
    consumer.subscribe(topics);

    while(true){
        ConsumerRecords<String,String> consumerRecords = consumer.poll(1000);
        Iterator<ConsumerRecord<String,String>> iterator = consumerRecords.iterator();
        while(iterator.hasNext()){
            i++;
            ConsumerRecord<String,String> consumerRecord = iterator.next();
            String key = consumerRecord.key();
            String value = consumerRecord.value();
            if(key=="exit" …
Run Code Online (Sandbox Code Playgroud)

java apache-kafka kafka-consumer-api

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