标签: nested

MongoDB在嵌套字段中更新数据

我使用Mongo作为我的数据库.我有一个数据:

 {
   _id : '123'
   friends: [
     {name: 'allen', emails: [{email: '11111', using: 'true'}]}
   ]
 }
Run Code Online (Sandbox Code Playgroud)

现在,我想动机用户的朋友的电子邮件'的电子邮件,其_id是'123',我这样写:

db.users.update ({_id: '123'}, {$set: {"friends.0.emails.$.email" : '2222'} })
Run Code Online (Sandbox Code Playgroud)

这很简单,但是,当电子邮件数组有两个或更多数据时,这是错误的.所以,我的问题是:如何在嵌套文件中激活数据---只有两个或更多嵌套数组?谢谢.

nested mongodb

44
推荐指数
2
解决办法
5万
查看次数

嵌套回调的Java模式?

我正在寻找一种Java模式来制作嵌套的非阻塞方法调用序列.在我的例子中,一些客户端代码需要异步调用服务来执行某些用例,并且该用例的每个步骤本身必须异步执行(出于此问题范围之外的原因).想象一下,我现有的接口如下:

public interface Request {} 

public interface Response {} 

public interface Callback<R extends Response> {
    void onSuccess(R response);
    void onError(Exception e);
}
Run Code Online (Sandbox Code Playgroud)

RequestResponse接口的各种配对实现,即RequestA+ ResponseA(由客户端给出),RequestB+ ResponseB(由服务内部使用)等.

处理流程如下所示:

显示嵌套回调的序列图.

在接收到每个响应和发送下一个请求之间,需要进行一些额外的处理(例如,基于任何先前请求或响应中的值).

到目前为止,我已经尝试了两种在Java中编码的方法:

  • 匿名类:由于所需的嵌套而很快变得难看
  • 内部类:比上面更整洁,但仍然难以让其他开发人员理解执行流程

是否有一些模式可以使这些代码更具可读性?例如,我可以将服务方法表示为一个自包含操作的列表,这些操作由一些负责嵌套的框架类按顺序执行吗?

java design-patterns asynchronous nested callback

42
推荐指数
2
解决办法
7359
查看次数

如何从嵌套的Python生成器函数中产生结果?

我有一个功能,可以在下载时产生结果.出于这个问题的目的,让我说我每秒产生一次刺痛,但我想要一个方便函数来包装我的生成器:

import time

def GeneratorFunction(max_val):
    for i in range(0,5):
        time.sleep(1)
        yield "String %d"%i

def SmallGenerator():
    yield GeneratorFunction(3)

for s in SmallGenerator():
    print s
Run Code Online (Sandbox Code Playgroud)

...为什么不打印出我期待的5根弦?相反,它似乎返回生成器函数:

<generator object GeneratorFunction at 0x020649B8>
Run Code Online (Sandbox Code Playgroud)

如何让这个产生字符串作为普通的生成器函数?

python yield nested function generator

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

Ruby在嵌套函数中访问外部变量

我相信这有一个简单的答案; 我似乎无法找到它.我在Ruby中创建了一个嵌套函数,但我无法从内部函数内部的外部函数访问变量:

def foo(x)
  def bar
    puts x
  end
  bar
  42
end

foo(5)
Run Code Online (Sandbox Code Playgroud)

我得到:NameError: undefined local variable or methodx'为main:Object`

类似的Python代码有效:

def foo(x):
  def bar():
    print x
  bar()
  return 42

foo(5)
Run Code Online (Sandbox Code Playgroud)

那么我如何在Ruby中做同样的事情呢?

ruby scope nested

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

嵌套的jQuery.each() - 继续/中断

请考虑以下代码:

    var sentences = [
        'Lorem ipsum dolor sit amet, consectetur adipiscing elit.',
        'Vivamus aliquet nisl quis velit ornare tempor.',
        'Cras sit amet neque ante, eu ultrices est.',
        'Integer id lectus id nunc venenatis gravida nec eget dolor.',
        'Suspendisse imperdiet turpis ut justo ultricies a aliquet tortor ultrices.'
    ];

    var words = ['ipsum', 'amet', 'elit'];

    $(sentences).each(function() {
        var s = this;
        alert(s);
        $(words).each(function(i) {
            if (s.indexOf(this) > -1)
            {
                alert('found ' + this);
                return false;
            }
        });
    });
Run Code Online (Sandbox Code Playgroud)

有趣的部分是嵌套的jQuery.each()循环.根据文档 …

each jquery nested continue break

41
推荐指数
6
解决办法
10万
查看次数

MySQL嵌套选择查询?

好的,所以我有以下查询:

SELECT MIN(`date`), `player_name`
FROM `player_playtime`
GROUP BY `player_name`
Run Code Online (Sandbox Code Playgroud)

然后我需要在以下查询中使用此结果:

SELECT DATE(`date`) , COUNT(DISTINCT  `player_name`)
FROM  `player_playtime /*Use previous query result here*/`
GROUP BY DATE( `date`) DESC LIMIT 60
Run Code Online (Sandbox Code Playgroud)

我该怎么做呢?

mysql sql select nested group-by

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

嵌套<div>将嵌套<p>不起作用?

我通常不会这样筑巢<p>:

<p>The following:
    <p>one</p>
    <p>two</p>
</p>
Run Code Online (Sandbox Code Playgroud)

我将使用<div>相反的方式嵌套.但是今天我用过<p>但似乎Emacs和谷歌Chrome都会在<p>看到新<p>的开始时就考虑外部关闭.(这DOCTYPE是HTML 4.01严格).

我认为<p>只不过是一个<div>预先定义的边距和填充,但它是否真的<p>不能嵌套?如果是这样,什么规则说它不能?

html nested paragraph

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

为什么在泛型类中使用重复嵌套类型的字段声明会导致巨大的源代码增加?

场景非常罕见,但非常简单:定义一个泛型类,然后创建一个嵌套类,它继承自外部类并在嵌套中定义一个关联字段(self类型).代码片段比描述更简单:

class Outer<T>
{
    class Inner : Outer<Inner>
    {
        Inner field;
    }
}
Run Code Online (Sandbox Code Playgroud)

在反编译IL之后,C#代码如下所示:

internal class Outer<T>
{
    private class Inner : Outer<Outer<T>.Inner>
    {
        private Outer<Outer<T>.Inner>.Inner field;
    }
}
Run Code Online (Sandbox Code Playgroud)

这看起来很公平,但是当你改变字段的类型声明时,事情变得更加棘手.所以当我将字段声明更改为

Inner.Inner field;
Run Code Online (Sandbox Code Playgroud)

反编译后,此字段将如下所示:

private Outer<Outer<Outer<T>.Inner>.Inner>.Inner field;
Run Code Online (Sandbox Code Playgroud)

我明白,这个类'嵌套'和继承彼此并不相处,但为什么我们会观察到这种行为呢?在 Inner.Inner 类型声明已经发生任何变化的类型?是 Inner.Inner Inner 类型,在此情况下某种方式有什么不同?

当事情变得非常棘手

您可以在下面看到该类的反编译源代码.它非常庞大,总长度为12159个符号.

class X<A, B, C>
{
    class Y : X<Y, Y, Y>
    {
        Y.Y.Y.Y.Y.Y y;
    }
} 
Run Code Online (Sandbox Code Playgroud)

最后,这堂课:

class X<A, B, C, D, E>
{
    class Y : X<Y, Y, Y, Y, Y> …
Run Code Online (Sandbox Code Playgroud)

.net c# generics nested c#-4.0

39
推荐指数
3
解决办法
1435
查看次数

如何在AngularJS中设置嵌套视图?

我有一个各种屏幕的应用程序.每个屏幕都分配一个URL,如#,mails,contacts,等.

在我的主HTML文件中,我有一个ng-view元素,根据用户选择的路由进行更新.到现在为止还挺好.

现在这些屏幕中的一些具有子导航.例如,#mails确实有一个收件箱和一个已发送的文件夹.他们向自己展示了两列:左侧的子导航,右侧相应文件夹的邮件.

当您导航到时#mails,它将重定向到您#mails/inbox,因此基本上收件箱邮件的默认子视图.

我怎么能这样设置?

我现在能想到的唯一方法(我对AngularJS很新,因此如果这个问题有点天真,请原谅我)是有两个视图,一个用于#mails/inbox,另一个用于#mails/sent.

选择路径时,将加载这些视图.当您选择#mails它时,只需将您重定向到#mails/inbox.

但这意味着两个视图必须使用一个ng-include子导航.不知怎的,这对我来说是不对的.

我更喜欢的是嵌套视图:顶部视图在诸如邮件,联系人等屏幕之间切换,而底部视图在诸如收件箱,发送等子视图之间切换.

我该如何解决这个问题?

nested uiview angularjs

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

我怎样才能在python中挑选一个嵌套类?

我有一个嵌套类:

class WidgetType(object):

    class FloatType(object):
        pass

    class TextType(object):
        pass

..和一个引用嵌套类类型(不是它的实例)的对象,就像这样

class ObjectToPickle(object):
     def __init__(self):
         self.type = WidgetType.TextType

尝试序列化ObjectToPickle类的实例会导致:

PicklingError:无法挑选<class'setmanager.app.site.widget_data_types.TextType'>

有没有办法在python中腌制嵌套类?

python nested class pickle

38
推荐指数
5
解决办法
2万
查看次数